728x90
반응형
import os
path_dir = 'E:/RnD/지식IN/tmp5' # 대상 폴더 지정
ss = input('검색할 파일 이름을 입력(예:reunion.txt): ') # 파일명(확장자 포함) 입력 받음
tmp = ss.split('.') # 확장자 구분을 위해 '.' 문자로 분리하려 리스트로 만듬. '.'이 여러개인 파일명 처리에 쉬움
ext = tmp[-1] # 리스트 중 마지막 요소(문자열)이 확장자가 됨
fname = ''.join(tmp[:-1]) # 리스트 중 마지막 요소를 제외한 앞부분 요소들이 파일명(확장자 제외)이 됨
if ext != 'txt' and ext != 'xlsx': # txt, xlsx가 아닌 확장자를 입력하면 존재하지 않는 확장자
print("존재하지 않는 확장자입니다")
else:
file_lst = os.listdir(path_dir) # 해당 폴더의 파일 리스트를 가져 옴(reunion.txt 등등)
flag_find = False # 입력된 파일명의 파일을 찾았는지 구분 bool 변수
for i in range(len(file_lst)): # 파일명을 순차적으로 가져옴.
tmp = file_lst[i].split('.') # 파일명과 확장자 분리
ext = tmp[-1]
if fname+'.' in file_lst[i]: # 찾으려는 파일명(입력 받은) 문자열이 폴더의 파일명 문자열에 있는지(in) 확인
if ext == 'txt' or ext == 'xlsx': # 찾은 파일명의 확장자가 txt 또는 xlsx 이면
print(file_lst[i]) # 파일명 출력
flag_find = True # 입력한 파일명의 파일을 찾았다고 bool 변수를 True로 함
if flag_find == False: # 모든 파일을 확인했는데 False이면 해당 파일이 없는 것임
print("존재하지 않는 파일입니다")

결과
검색할 파일 이름을 입력(예:reunion.txt): reunion.txt
reunion.txt
reunion.xlsx
-
검색할 파일 이름을 입력(예:reunion.txt): reunion.ppt
존재하지 않는 확장자입니다
-
검색할 파일 이름을 입력(예:reunion.txt): ex03.txt
존재하지 않는 파일입니다
728x90
반응형
'프로그램' 카테고리의 다른 글
[파이썬] 문자열(가,나,다,라..파,하)을 리스트로 만들기 (0) | 2022.11.12 |
---|---|
[파이썬] 문제 : 딕셔너리 만드는 3가지 방법 (0) | 2022.11.12 |
[파이썬] 문제 : 입력한 문자열이 대,소 문자 포함 여부 (0) | 2022.11.12 |
[파이썬] 함수의 인수 전달(*리스트, **딕셔너리) (0) | 2022.11.09 |
[파이썬] 문제 : 숫자로 찍기(별 찍기 응용) (0) | 2022.11.09 |
댓글