파일명에서 특정자리수들을 출력하여 알파벳숫자가 7개가 아니면 파일 전체명을 출력,,
조회수 1183회
현재 파이썬 언어를 사용하고 있으며 코드 구현에 어려움을 겪고 있습니다. 예를 들어서 G:\새 폴더 경로 내에 '181001161609_00001_1AE_AAAABAA.bmp' , 181101161609_00001_1AE_AAABBAA.bmp' 등과 같은 형태의 포맷을 가지는 파일들이 있습니다.
이들 중 .bmp 전의 마지막 알파벳 7자리(AAABBAA)가 7개가 아니면 파일명 전체를 출력해주는 코드를 구현하고 싶습니다.
파이썬에 초짜라서 커맨드나 해본 코드가 없네요 죄송합니다.. 도움부탁드립니다.
-
(•́ ✖ •̀)
알 수 없는 사용자
2 답변
-
-
import os files = os.listdir('YOUR_DIR_PATH') for file in files: filename = os.path.splitext(file)[0] # 파일 이름과 확장자 분리 last_token = filename.split('_')[-1] # "_"을 splitter로 하여 마지막 토큰을 뽑아 냄 if len(last_token) == 7: # 마지막 토큰의 길이가 7개이면 print(last_token) else: print(filename)
대략적으로 저렇고
모든 파일 이름이 유사한 포멧을 가진다는 전제 하에 작성된 코드입니다. 예외처리는 상황에 맞게 알아서 해 주시면 될 것 같고요.
댓글 입력