>  기사  >  백엔드 개발  >  Python 3.x에서 파일 패턴 일치를 위해 glob 모듈을 사용하는 방법

Python 3.x에서 파일 패턴 일치를 위해 glob 모듈을 사용하는 방법

WBOY
WBOY원래의
2023-07-30 13:41:581540검색

Python 3.x에서 파일 패턴 일치를 위해 glob 모듈을 사용하는 방법

소개:
Python 파일 처리에서는 특정 폴더의 파일을 일괄 처리해야 하는 경우가 많습니다. 폴더의 모든 파일에 대해 작업을 수행해야 하는 경우 파일 패턴 일치를 사용해야 합니다. Python은 이러한 요구 사항을 쉽게 처리할 수 있는 glob 모듈을 제공합니다. 이 기사에서는 glob 모듈의 기본 사용법과 일반적인 작업을 소개합니다.

1. glob 모듈 소개
glob 모듈은 파일 시스템에서 특정 패턴과 일치하는 파일 이름을 찾아 목록 형식으로 반환하는 데 사용됩니다. .

glob 모듈에서 가장 일반적으로 사용되는 방법은 glob() 함수입니다. 경로를 인수로 받아들이고 패턴과 일치하는 파일 이름 목록을 반환할 수 있습니다. 이 패턴에는 와일드카드 문자 * 및 ?가 포함될 수 있습니다. 이는 각각 여러 문자 일치 및 단일 문자 일치를 나타냅니다.

2. 기본 사용법
아래에서는 몇 가지 예를 통해 glob 모듈의 기본 사용법을 소개합니다.

(1) 현재 폴더에서 모든 Python 파일 찾기:

import glob

python_files = glob.glob("*.py")
print(python_files)

실행 결과는 다음과 같습니다:

[' 예 .py', 'main.py', 'utils.py']

(2) 지정된 폴더에서 모든 파일을 찾습니다:

import glob

all_files = glob.glob("/path/to/folder /* ")
print(all_files)

실행 결과는 다음과 같습니다.

['file1.txt', 'folder1', 'file2.txt']

3. 와일드카드 사용
와일드카드는 다음에 따라 유연하게 조정할 수 있습니다. 실제 상황 매칭 작업. 다음은 몇 가지 일반적인 상황과 사용 방법입니다.

(1) 원하는 수의 문자 일치:
import glob

files = glob.glob("/path/to/folder/test")
print(files)

이 예에서 test는 다음을 의미합니다. 테스트 문자가 포함된 파일 이름과 일치합니다.

(2) 단일 문자 일치:
import glob

files = glob.glob("/path/to/folder/?test.txt")
print(files)

?test.txt 이 예에서는 다음을 의미합니다. test.txt로 끝나고 파일 이름 앞에 문자가 하나 있는 파일과 일치합니다.

4. 재귀 검색
glob 모듈은 하위 폴더를 재귀적으로 검색하는 기능도 제공합니다. recursive 매개변수를 True로 설정하면 재귀 검색이 가능합니다.

import glob

all_files = glob.glob("/path/to/folder/*/.py", recursive=True)
print(all_files)

실행 결과는 다음과 같습니다:

['file1 .py', 'subfolder/file2.py', 'folder/file3.py']

V.요약
이 글에서는 Python 3.x에서 파일 패턴 일치를 위해 glob 모듈을 사용하는 기본적인 사용법을 소개합니다. glob.glob() 함수를 통해 특정 패턴을 기반으로 일치하는 파일 이름을 찾아 목록 형식으로 반환할 수 있습니다. 동시에 와일드카드 문자 * 및 ?는 파일 이름을 보다 정확하게 일치시키는 데 도움이 될 수 있습니다. 재귀 검색은 하위 폴더에서 파일 일치 작업을 수행하는 데 도움이 될 수 있습니다.

이 글의 내용이 독자들이 glob 모듈을 더 잘 이해하고 사용하며 파일 처리의 효율성과 정확성을 높이는 데 도움이 되기를 바랍니다. 동시에 독자들은 이 모듈의 다른 기능과 용도를 탐색할 수도 있습니다.

위 내용은 Python 3.x에서 파일 패턴 일치를 위해 glob 모듈을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.