728x90
반응형
오늘은 경로안에 같은 확장자인 파일만 획득할 수 있도록 해주는 glob 라이브러리에 대해 포스팅하겠다.
같은 확장자의 파일 획득하기
glob는 같은 확장자를 획득할때 유용한 라이브러리이다.
glob가 같은 확장자의 파일을 추출하는데 유용한 이유는 특정 문자열이 포함된 파일들을 추출 할 수 있기 때문이다.
[읽을 폴더 정보]
다양한 폴더와 .wav, .txt, .dcm 확장자들이 함께 있는 형태이다.
[라이브러리 선언 및 하위 폴더 출력_1]
glob 라이브러리의 glob 함수를 선언한다.
'*'은 모든 조건을 포함한다는 얘기로 해당 경로의 모든 폴더가 출력된다.
from glob import glob
print(glob('./*'))
# ['.\\LIDC', '.\\music_sample', '.\\Untitled.ipynb']
[하위 폴더 출력_2]
music_sample 폴더 내의 모든 폴더 및 파일들을 출력이 된다.
print(glob('./music_sample/*'))
"""
['./music_sample\\0001.wav',
'./music_sample\\0002.wav',
'./music_sample\\0003.wav',
'./music_sample\\0004.wav',
'./music_sample\\0005.wav',
'./music_sample\\0006.wav',
'./music_sample\\0007.wav',
'./music_sample\\0008.wav',
'./music_sample\\1-001.dcm',
'./music_sample\\annotation.txt']
"""
[같은 확장자 출력]
위에서 언급했듯 '*'은 모든 조건을 포함시킬 수 있도록 한다.
이를 응용하여 특정 확장자는 선언하고 이후 나머지 문자열은 '*'로 선언해준다면 선언한 확장자를 가진 파일 및 폴더만 출력이 된다.
print(glob('./music_sample/*.wav')) # 마지막에 '.wav'가 포함된 파일 출력
"""
['./music_sample\\0001.wav',
'./music_sample\\0002.wav',
'./music_sample\\0003.wav',
'./music_sample\\0004.wav',
'./music_sample\\0005.wav',
'./music_sample\\0006.wav',
'./music_sample\\0007.wav',
'./music_sample\\0008.wav']
"""
[특정 문자열이 포함된 파일 및 폴더 출력]
또한 특정 문자열이 포함된 파일 및 폴더만 출력하는 것도 가능하다.
print(glob('./music_sample/*00*')) # 가운데 '00'이 포함된 파일 출력
"""
['./music_sample\\0001.wav',
'./music_sample\\0002.wav',
'./music_sample\\0003.wav',
'./music_sample\\0004.wav',
'./music_sample\\0005.wav',
'./music_sample\\0006.wav',
'./music_sample\\0007.wav',
'./music_sample\\0008.wav',
'./music_sample\\1-001.dcm']
"""
위와 같이 glob 함수는 특정 문자열을 포함하거나 특정 확장자를 가진 파일만 출력하도록 용이하게 만들어주는 라이브러리이다.
728x90
반응형
'Python' 카테고리의 다른 글
[Python] tqdm - 알고리즘 진행률 확인하기 (0) | 2022.09.10 |
---|---|
[Python] for loop - enumerate, zip 사용 (0) | 2022.09.09 |
[Python] shutil - 폴더 및 파일 복사하기 (0) | 2022.09.09 |
[Python] uuid - UUID 생성하기 (0) | 2022.08.30 |
[Python] time - 날짜 및 알고리즘 소요시간 구하는 법 (0) | 2022.08.30 |
댓글