이번 포스팅에서는 컴퓨터에 있는 기존 파일을 새로운 파일명으로 변경할 때, 유용한 파이썬 함수를 만들어 보겠습니다.
( 파일명을 변경하는 파이썬 함수 )파일을 백업할 때, 일괄적으로 작업하는 경우가 많이 있기 때문에 매우 유용하게 사용할 수 있는 함수입니다.
파일명을 변경하는 파이썬 함수의 최종 코드
최종 코드
import os
def rename_files(directoryPath, oldName, newName):
for filename in os.listdir(directoryPath):
if oldName in filename:
newFileName = filename.replace(oldName, newName)
os.rename(os.path.join(directoryPath, filename), os.path.join(directoryPath, newFileName))
함수 실행 결과
위의 함수를 이용해서 ‘D:/zzinnam/02. 아이콘’ 경로에 있는 ‘gear.png’ 파일을 ‘gear_new.png’ 파일명으로 변경해 보겠습니다.
rename_files(r'D:/zzinnam/02. 아이콘', 'gear.png', 'gear_new.png')
위의 코드를 실행하면 아래처럼 파일명이 변경되었음을 확인할 수 있습니다.
함수 코드에 대한 상세 설명
import os
os 모듈에서 제공하는 함수를 사용하기 위해 os 모듈을 로딩하는 코드입니다. os 모듈은 운영체제에서 제공하는 여러 기능을 파이썬에서 수행할 수 있게 해주는 모듈입니다.
def rename_files(directoryPath, oldName, newName):
3개의 인수(directoryPath, oldName, newName)를 받는 rename_files 함수를 정의합니다.
for filename in os.listdir(directoryPath):
상기 명령문에 대한 자세한 설명은 아래 포스팅 글을 참고하시면 됩니다.
폴더-및-파일-정리용-파이썬-함수-만들기
if oldName in filename:
인수로 입력받은 oldName 이 filename이 있다면 아래 명령문을 수행합니다.
newFileName = filename.replace(oldName, newName)
replace(인수1, 인수2)함수는 ‘인수1’의 문자열을 ‘인수2’로 변경하는 함수입니다.
입력받은 oldName 을 newName으로 변경하여 newFileName에 저장합니다.
os.rename(os.path.join(directoryPath, filename), os.path.join(directoryPath, newFileName))
os.path.join 함수는 아래 2개의 포스팅 글을 참고하시면 됩니다.
폴더-및-파일-정리용-파이썬-함수-만들기
빈-폴더-제거용-파이썬-함수-만들기
os.rename(인수1, 인수2) 함수는 ‘인수1’의 파일명을 ‘인수2’의 파일명으로 변경하는 함수입니다.
os.path.join(directoryPath, filename)의 파일명을 os.path.join(directoryPath, newFileName) 로 변경합니다.
이번 포스팅에서는 특정 경로명에 있는 파일의 이름을 새로운 파일명으로 변경해 주는 파이썬 함수를 작성해 보았습니다.
감사합니다!