728x90
[Python] glob
glob
glob 모듈은 파일 및 디렉토리 경로를 패턴으로 검색할 수 있도록 도와주는 파이썬의 기본 라이브러리다.
이를 활용하면 특정 확장자나 이름을 가진 파일을 쉽게 찾아낼 수 있다.
모듈 사용법
1. 기본 사용법
먼저 모듈을 import 해준다.
import glob
glob은 파일 경로 패턴을 매칭하여 해당하는 파일들의 리스트를 반환한다.
간단한 예제로 현재 디렉토리에서 모든 파일을 검색해보자.
files = glob.glob(*)
print(files)
## result
['file1.txt', 'scripts.py', 'image.jpg']
2. 특정 확장자의 파일 검색
특정 확장자의 파일만 검색하고 싶다면, 파일명 뒤에 확장자를 명시하면 된다.
예를 들어 .txt 파일만 검색해보자.
txt_files = glob.glob('*.txt)
print(txt_files)
## result
['file1.txt', 'notes.txt']
3. 재귀 검색
기본적으로 glob은 하위 디렉토리까지 검색을 하지 않지만,
와일드카드를 사용하면 하위 디렉토리까지 재귀적으로 검색할 수 있다. 이때, recursive=True 옵션을 사용해야 한다.
all_files = glob.glob(**/*.py), recurisve=True)
print(all_files)
## result
['scripts.py', 'subdir/test.py']
4. 파일 이름 패턴에 맞는 파일 검색
특정 패턴을 가진 파일만 검색하고 싶다면, ?와 같은 와일드 카드 문자를 사용할 수 있다.
* | 0개 이상의 문자를 매칭 |
? | 정확히 1개의 문자와 매칭 |
[] | 문자 범위를 지정 |
pattern_files = glob.glob('file?.txt')
print(patter_files)
## result
['file1.txt', 'file2.txt']
5. 디렉토리만 검색
파일뿐만 아니라 */ 패턴을 사용하면 디렉토리도 검색할 수 있다.
diretory = glob.glob('*/')
print(directory)
## result
['dir1/', 'dir2/']
반응형
'👩💻 Develope > Python' 카테고리의 다른 글
[Python] pip freeze 명령어 사용 시 패키지 버전이 제대로 나오지 않을 때 (0) | 2024.10.14 |
---|---|
[Python][bs4] BeautifulSoup4에서 텍스트로 파싱하기 (0) | 2024.10.08 |
[Python] SQLAlchemy 이해하기 (0) | 2024.09.02 |
[Pandas] to.sql() (0) | 2024.08.23 |
[Pandas] apply로 다중 반환 값을 여러 열에 할당하기 (0) | 2024.08.22 |