ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Python으로 파일 이름 바꾸기
    IT 지식 창고 2020. 3. 22. 18:45

    한 예제를 통해 다양한 폴더안의 여러 파일들의 이름을 바꿀 것입니다.

    응용을 하면 본인들이 원하는 방향으로 사용할 수 있을 것이라고 생각합니다.

     

    이는 실제 현업에서 사용한 것을 까먹지 않도록 블로그에 올리고, 다른사람들도 유용하게 썼으면 하는 마음에 올립니다.

     

    상황 : test로 시작하는 폴더안의 img들을 한 폴더에 넣을 건데, 이름이 같아서 구분할 수 있도록 했으면 좋겠다.

     

    위 사진은 상황을 이해할 수 있도록 폴더명을 표현하였습니다.

     

    코드

    #여러 파일 이름 바꾸기
    import os
    
    #폴더들이 있는 경로를 list로 할당
    folder_list = os.listdir()
    
    #이중 for문으로 각 폴더안의 이미지들의 이름을 변경함
    for folder in folder_list:
    	#여러 폴더가 섞여 있으므로, 요구사항에 맞게 test이름이 들어간 폴더만 선택하도록 함.
        if 'test' in folder:
        	#폴더안의 이미지를 구분하기위해 폴더이름을 name으로 할당
            name = folder
            #폴더안의 image들을 list로 할당
            image_list = os.listdir(i)
            
            for image in image_list:
                new_name = name+image
                #os.rename(원본, 변경할이름)
                os.rename(folder+'/'+image, folder+'/'+new_name)

    설명

    파일명을 바꾸기 위해 os.rename을 사용하였습니다.

    원본을 그대로 살리고 싶다면, os.rename이 아닌 shutil.copy()를 사용해야 합니다.

    shutil은 import shutil 후 os.rename이랑 똑같이 사용하면 됩니다!

     

    경로안의 여러 폴더이름을 받아 들이기 위해 listdir()를 사용하였습니다.

     

    listdir()과 rename()을 응용한다면 여러 대상들의 이름을 바꿀 수 있을 것입니다.

    댓글

Designed by Tistory.