>백엔드 개발 >파이썬 튜토리얼 >Python을 사용하여 디렉터리의 파일을 효율적으로 반복하려면 어떻게 해야 합니까?

Python을 사용하여 디렉터리의 파일을 효율적으로 반복하려면 어떻게 해야 합니까?

DDD
DDD원래의
2024-12-16 21:42:14443검색

How Can I Efficiently Iterate Through Files in a Directory Using Python?

디렉터리의 파일 반복

소개:
디렉터리의 파일 반복은 매우 중요합니다. 다양한 소프트웨어 응용 프로그램에 대한 작업입니다. 이 문서에서는 Python을 사용하여 이를 달성하기 위한 효율적인 접근 방식을 제공하고 Python 3.6 및 재귀 pathlib 방법을 모두 논의합니다.

os를 사용하는 Python 3.6용 솔루션:

  1. os 가져오기 운영 체제 모듈에 액세스합니다.
  2. 디렉터리 경로를 문자열 개체로 정의합니다. 디렉터리_in_str 변수.
  3. 디렉토리 내의 모든 파일을 나열하려면 os.listdir(디렉토리)를 사용하세요.
  4. for 루프를 사용하여 각 파일을 반복하고 os.fsdecode(파일)를 사용하여 파일 이름을 추출합니다.
  5. Endwith(".asm") 또는 endwith(".py")를 사용하여 파일 확장자를 확인하여 다음 파일을 식별하세요. 관심.
  6. 식별된 파일에 대해 필요한 작업을 수행합니다.

코드 예:

import os

directory = os.fsencode(directory_in_str)
    
for file in os.listdir(directory):
    filename = os.fsdecode(file)
    if filename.endswith(".asm") or filename.endswith(".py"): 
        # print(os.path.join(directory, filename))
        continue
    else:
        continue

솔루션 사용 pathlib for 재귀적 반복:

  1. pathlib 모듈에서 Path를 가져옵니다.
  2. Path.glob('**/*.asm') 또는 Path.rglob( '*.asm')을 디렉터리 경로에 추가합니다.
  3. pathlist.
  4. 추가 처리를 위해 str(path)을 사용하여 각 경로 객체를 문자열로 변환합니다.

코드 예:

from pathlib import Path

pathlist = Path(directory_in_str).glob('**/*.asm')
for path in pathlist:
    # because path is object not string
    path_in_str = str(path)   
    # print(path_in_str)

이러한 방법은 특정 디렉터리의 파일을 반복하는 효과적인 솔루션을 제공하므로 개발자는 특정 파일 형식에 대해 다양한 작업을 효율적으로 수행할 수 있습니다.

위 내용은 Python을 사용하여 디렉터리의 파일을 효율적으로 반복하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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