python(파이썬)에서 파일 이름의 확장자를 따로 얻는 방법을 알아보려고합니다.



# Pythin에서 파일 이름, 확장자 따로 구분하여 얻기
확장자(file extension)만 따로 얻기 위해서 정규표현식이나 구분자를 기준으로 자를 수도 있겠지만 여기서는 아래의 방법을 사용하려고 합니다.

os.path.splitext()

python의 os 모듈을 추가해 간단히 확장자를 분히하는 것이 가능하며 가장 쉽고 빠른 방법입니다. 그러면 아래에 간단한 예제를 만들어봅니다.


! splitext() 예제보기
아래 예제는 파일의 확장자를 분리하여 중간에 임의의 수를 추가하려고 합니다. 파일 업로드시 이처럼 임의의 문자를 추가해 중복되는 파일명을 피할 수도 있습니다.
import os

ms_str = '_' + str(datetime.datetime.today().microsecond)[:4]

file_name, file_ext = os.path.splitext(filename)
new_filename = file_name + salt_str + '.' + file_ext)

코드를 살펴보면 먼저 os 모듈을 추가합니다.
다음으로 밀리세컨드 값의 네 자리만 얻어 파일 이름에 추가하도록 합니다.
datetime.datetime.today().microsecond

네 자리 수만 얻기 위해서 문자열로 변경하였습니다. 이제 새로운 변수 new_filename이 선언되었습니다. 이처럼 splitext()를 사용하면 간단하게 파일의 확장자를 얻을 수 있었습니다.

여기까지 Python에서 파일의 이름과 확장자를 각각 얻을 수 있는 방법에 대하여 알아봤습니다.