Python – 디렉토리의 파일 나열
13720 단어 codenewbiepythontutorialprogramming
Python에는 디렉터리나 폴더에 있는 파일을 나열하는 데 사용할 수 있는 여러 모듈이 있습니다. 우리가 사용할 수 있는 인기 있는 것들은 os, pathlib, glob, fnmatch 등이 있습니다. 이 튜토리얼은 디렉토리의 모든 파일을 나열하는 가장 인기 있는 방법을 살펴볼 것입니다.
방법 1: os.listdir() 메서드 사용
os.listdir()
를 사용하여 지정된 경로의 모든 파일과 디렉토리를 가져올 수 있습니다.구문 – os.listdir(경로)
경로를 매개변수로 사용하고 지정된 경로의 모든 파일 및 디렉토리 목록을 반환합니다.
# import OS module
import os
# List all the files and directories
path = "C:\Projects\Tryouts"
dir_list = os.listdir(path)
print("Files and directories in '", path, "' :")
# prints all files
print(dir_list)
산출
Files and directories in ' C:\Projects\Tryouts ' :
['calc.py', 'etc', 'listindexerror.py', 'main.py', 'Python Tutorial.py', 'Python Tutorial.txt', 'test', 'test - Copy', ' __pycache__']
방법 2: os.walk() 메서드 사용
os 모듈은 운영 체제 기능과 상호 작용할 수 있는 많은 기능을 제공하며 이러한 방법 중 하나는 디렉토리 트리에 파일과 폴더를 생성하는
os.walk()
입니다. 트리를 하향식 또는 상향식 검색으로 탐색할 수 있으며 기본적으로 하향식 검색으로 설정됩니다.os.walk()
또한 절대 경로에서 파일과 폴더를 검색하는 데 도움이 됩니다.# import OS module
import os
# List all the files and directories
path = "C:\Projects\Tryouts"
for (root, directories, files) in os.walk(path, topdown=False):
for name in files:
print(os.path.join(root, name))
for name in directories:
print(os.path.join(root, name))
산출
C:\Projects\Tryouts\etc\password.txt
C:\Projects\Tryouts\test\python.txt
C:\Projects\Tryouts\test - Copy\python.txt
C:\Projects\Tryouts\ __pycache__ \calc.cpython-39.pyc
C:\Projects\Tryouts\calc.py
C:\Projects\Tryouts\listindexerror.py
C:\Projects\Tryouts\main.py
C:\Projects\Tryouts\Python Tutorial.py
C:\Projects\Tryouts\Python Tutorial.txt
C:\Projects\Tryouts\etc
C:\Projects\Tryouts\test
C:\Projects\Tryouts\test - Copy
C:\Projects\Tryouts\ __pycache__
방법 3: os.scan() 메서드 사용
os.scan()
메서드는 Python 3.5 이상에서 사용할 수 있습니다. scandir()
경로 매개변수에 대해 바이트열 또는 str 개체를 허용하고 경로와 동일한 유형의 DirEntry.name 및 DirEntry.path 속성을 반환합니다.구문: os.scandir(경로 = '.')
# import OS module
import os
# List all the files and directories
path = "C:\Projects\Tryouts"
data = os.scandir()
for item in data:
if item.is_dir() or item.is_file():
print(item.name)
산출
calc.py
etc
listindexerror.py
main.py
Python Tutorial.py
Python Tutorial.txt
test
test - Copy
__pycache__
방법 4: glob 모듈 사용
glob
모듈은 glob이 와일드카드 검색을 지원하므로 지정된 패턴과 일치하는 파일/경로를 검색하는 데 도움이 됩니다. glob 모듈을 사용하여 파일과 폴더를 모두 가져올 수 있습니다.# import OS module
import glob
# List all the files and directories
path = "C:\Projects\Tryouts\*"
for file_name in glob.iglob(path, recursive=True):
print(file_name)
C:\Projects\Tryouts\calc.py
C:\Projects\Tryouts\etc
C:\Projects\Tryouts\listindexerror.py
C:\Projects\Tryouts\main.py
C:\Projects\Tryouts\Python Tutorial.py
C:\Projects\Tryouts\Python Tutorial.txt
C:\Projects\Tryouts\test
C:\Projects\Tryouts\test - Copy
C:\Projects\Tryouts\ __pycache__
iglob()
메서드를 사용하여 파일 이름을 재귀적으로 인쇄할 수도 있습니다. 재귀 매개변수를 true로 설정하기만 하면 됩니다.예제 아래에서 재귀를 true로 설정하고 특정 패턴으로 검색하여 모든 .py 파일을 가져오는
iglob()
메서드를 사용합니다.# import OS module
import glob
# List all the files and directories
path = "C:\Projects\Tryouts\*.py"
for file_name in glob.iglob(path, recursive=True):
print(file_name)
산출
C:\Projects\Tryouts\calc.py
C:\Projects\Tryouts\listindexerror.py
C:\Projects\Tryouts\main.py
C:\Projects\Tryouts\Python Tutorial.py
게시물Python – List Files in a Directory이 ItsMyCode에 처음 등장했습니다.
Reference
이 문제에 관하여(Python – 디렉토리의 파일 나열), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/itsmycode/python-list-files-in-a-directory-ndj텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)