>  기사  >  백엔드 개발  >  파이썬 마법작전! 순서가 잘못된 파일 이름 바꾸기 번호!

파이썬 마법작전! 순서가 잘못된 파일 이름 바꾸기 번호!

PHPz
PHPz앞으로
2023-04-12 16:19:141763검색

파이썬 마법작전! 순서가 잘못된 파일 이름 바꾸기 번호!

아래 사진처럼 로컬 폴더에 동영상 파일이 잔뜩 있는데, 이 경우에도 순서가 어긋나지 않습니다.

파이썬 마법작전! 순서가 잘못된 파일 이름 바꾸기 번호!

그런데 네트워크 디스크에 업로드한 후 고장나는 경우가 종종 있습니다. 즉, 1, 10, 11, 2, 20 순으로 정렬되기 때문에 순서대로 보기에는 불편합니다.

파이썬 마법작전! 순서가 잘못된 파일 이름 바꾸기 번호!

그래서 로컬에서 이름을 바꿀 수 있기를 바랍니다. 예를 들어 위의 난처한 상황을 피하기 위해 001, 002, 003···, 020에 따라 정렬할 수 있습니다.

Python에서는 os 모듈을 사용하여 복사, 이동, 이름 바꾸기, 삭제 작업 등 다양한 파일 및 디렉터리를 자동으로 처리할 수 있습니다.

파일 목록 가져오기

대화형 환경에서 다음 명령을 입력하세요.

import os
path =os.getcwd()
filenames = os.listdir(path)
filenames

출력:

파이썬 마법작전! 순서가 잘못된 파일 이름 바꾸기 번호!

os 모듈의 getcwd() 함수를 사용하여 현재 작업 디렉터리를 가져올 수 있습니다. os 모듈의 listdir() 함수는 작업 디렉터리의 모든 파일과 하위 디렉터리를 반환할 수 있습니다. 이 두 함수를 통해 현재 작업 디렉터리의 모든 파일을 얻습니다.

비디오 파일 필터링

대화형 환경에서 다음 명령을 입력하세요.

file_mp4s = [i for i in filenames if i.split(".")[-1] == "mp4"]
file_mp4s

출력:

파이썬 마법작전! 순서가 잘못된 파일 이름 바꾸기 번호!

이 단계는 파일 목록의 모든 mp4 파일을 필터링하는 데 사용됩니다. 루프+조건을 사용하는 것은 너무 번거롭지만 목록 생성은 한 줄의 명령문으로 비디오 파일을 얻을 수 있습니다.

Batch rename

대화형 환경에서 다음 명령을 입력하세요.

for i in file_mp4s:
 new_name = i.split("-")[0].zfill(3) + "-" + i.split("-")[1]
 os.rename(i,new_name)

출력:

파이썬 마법작전! 순서가 잘못된 파일 이름 바꾸기 번호!

os 모듈의 rename() 함수를 사용하여 파일 이름을 바꿀 수 있습니다.

여기에는 문자열 함수 zfill()도 사용되어 지정된 길이의 문자열을 반환합니다. 원래 문자열은 오른쪽 정렬되고 앞에 0이 채워집니다. 따라서 "1".zfill(3)은 '001'을 반환합니다.

이렇게 해서 순서가 맞지 않는 파일의 이름 바꾸기와 번호 매기기를 완료했습니다. 오늘의 공유가 여러분에게 도움이 되길 바랍니다~

위 내용은 파이썬 마법작전! 순서가 잘못된 파일 이름 바꾸기 번호!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 51cto.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제