Appia의 IT세상

파이썬[Python] 폴더의 파일 목록에서 파일명만 출력하는 방법 본문

Python/Python 응용

파이썬[Python] 폴더의 파일 목록에서 파일명만 출력하는 방법

Appia 2021. 1. 14. 06:25
반응형

파이썬[Python] 폴더의 파일 목록에서 파일명만 출력하는 방법

파이썬[Python] 폴더의 파일 목록에서 파일명만 출력하는 방법

이번 포스팅에서는 이전에 문의주신 부분이 있어서 관련된 부분에 대해서 해결을 드리고자 다음과 같이 포스팅을 진행해보고자 합니다. 제가 댓글로 받은 질문은 다음과 같은 문의 사항이 있습니다. 

파일 목록에서 파일명만 출력하는 방법에 대해서 찾다가 여기까지 왔습니다 ㅠㅠ 확장자를 제거하고 파일 명만 출력할 수 있는 방법은 없을까요?

 

파이썬[Python] 폴더의 파일 목록 출력/특정 확장자 파일 목록 출력

이번 포스팅은 좀 간단한 팁을 하나 이야기를 드리고자 합니다. DBC 관련된 작업을 하다가, 고객의 요구 사항으로 파일 지정이 아니라, 폴더에 있는 모든 데이터들에 대해서 모두 파싱해주라고

appia.tistory.com

 

그래서 이번 포스팅에서는 파일 목록에서 파일명만 출력하는 방법에 대해서 포스팅을 해보고자 합니다. 일단 다음과 과정에 대해서 거치고자 합니다. 

 

1. 파일 / 폴더에 대해서 출력하기 

 

2. 파일부분에서 확장자를 제거하고 파일 명만 출력하기 

 

이와 같은 두단계로 작업을 진행하도록 하겠습니다. 

 

1. 파일 / 폴더에 대해서 출력하기 

먼저, 위와 같은 부분에 대해서 출력하기 위해서 다음과 같은 코드를 작성할 수 있습니다. 

import os.path

targerdir = r"D:\Blog_Image\Windows"

files = os.listdir(targerdir)

for i in files:

    if os.path.isdir(targerdir + r"\\" + i):
        print("folder : " +i)

    else :
        print("file : " + i)

 

물론 위에서 보이는 부분에서 실제 확장자를 제거하고 작업을 진행하는 부분에서는 다음 부분들은 구동되지 않게 작업을 진행할 것입니다. 

    if os.path.isdir(targerdir + r"\\" + i):
        print("folder : " +i)

 

이와 같은 부분을 활용해서 파일 / 폴더에 대해서 출력이 가능합니다. 

file : 1.PNG
folder : CPU_Z
folder : HEIC_JPG_PNG
...
Process finished with exit code 0

 

2. 파일부분에서 확장자를 제거하고 파일 명만 출력하기 

그럼 앞선 부분을 활용해서 파일 확장자를 제거하고, 파일명만 출력을 하도록 하겠습니다. 일단, 특정 문자 즉 확장자와 구별하는 .을 기반으로 좌우를 나눠줘야 합니다. 다음 코드를 한번 살펴보겠습니다. 

import os.path

targerdir = r"D:\Blog_Image\Windows"

files = os.listdir(targerdir)

for i in files:

    if os.path.isdir(targerdir + r"\\" + i):
        pass

    else :
        print("file : " + i)
        if i.count(".") == 1 : # . 이 한개일떄

            V = i.split(".")
            print("file Name : " + V[0])
        else :
            #print(len(i))
            for k in range(len(i)-1,0,-1): # . 이 여러개 일때
                if i[k] == ".":
                    print("file Name : "+i[:k])
                    break

 

위에서 보이는 바와 같이 . 이 한개일 때와 여러개일 때를 모두 고려해야합니다. 한개일때는 .을 기반으로 좌우를 분리하면 되지만, .이 여러개일 때는 마지막 점을 기준으로 확장자와 파일 명을 구별해야 합니다. 따라서 리스트에 간단한 사용법을 이용하여 출력해봤습니다. 

 

이번 포스팅에서는 파이썬[Python] 폴더의 파일 목록에서 파일명만 출력하는 방법라는 주제로 간단히 포스팅을 해봤습니다. 혹 궁금하신 점이나 문의 사항이 있으시면 언제든지 댓글 및 방명록에 글 남겨주시길 바랍니다. 감사합니다. 

반응형
Comments