Python에서 파일을 검색하는 방법
6113 단어 python
설정
globbing에 대한 몇 가지 예를 만들기 위해 디렉토리를 설정했습니다. 다음은 디렉토리의 모습입니다.
❯ tree .
.
├── content
│ ├── hello.md
│ ├── hello.py
│ ├── me.md
│ └── you.md
├── readme.md
├── README.md
├── READMES.md
└── setup.py
1개의 디렉토리, 8개의 파일
Pathlib
Pathlib는 현재 모든 LTS 버전의 Python에서 사용할 수 있는 표준 라이브러리 모듈입니다.
❯ from pathlib import Path
Path 인스턴스를 생성합니다.
# current working directory
Path() Path.cwd()
# The users home directory
Path.home()
# Path to a directory by string
Path('/path/to/directory')
# The users ~/.config directory
Path.home() / '.config'
글로빙 예
경로 개체에는 파일을 검색하기 위해 유닉스 스타일 glob 패턴이 있는 파일을 glob할 수 있는 glob 메서드가 있습니다. 그것은 당신에게 발전기를 제공합니다. 이것은 많은 사용 사례에 적합하지만 예를 들어 목록으로 변환하여 인쇄하는 것이 더 쉽습니다.
globbing이 무엇인지에 대한 자세한 내용이 필요한 경우 이에 대해 설명하는 wikipedia 문서가 있습니다. 나는 단지 pathlib로 글로빙하는 방법을 보여주고 있습니다.
❯ Path().glob("**/*.md")
<generator object Path.glob at 0x7fa35adc4f90>
❯ list(Path().glob("**/*.md"))
[
PosixPath('readme.md'),
PosixPath('READMES.md'),
PosixPath('README.md'),
PosixPath('content/you.md'),
PosixPath('content/me.md'),
PosixPath('content/hello.md')
]
❯ list(Path().glob("**/*.py"))
[PosixPath('setup.py'), PosixPath('content/hello.py')]
❯ list(Path().glob("*.md"))
[PosixPath('readme.md'), PosixPath('READMES.md'), PosixPath('README.md')]
❯ list(Path().glob("*.py"))
[PosixPath('setup.py')]
❯ list(Path().glob("**/*hello*"))
[PosixPath('content/hello.py'), PosixPath('content/hello.md')]
❯ list(Path().glob("**/REA?ME.md"))
[PosixPath('README.md')]
Reference
이 문제에 관하여(Python에서 파일을 검색하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/waylonwalker/how-i-glob-for-files-in-python-4gfc텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)