Python:glob 파일 일치 작업
glob의 응용 장면은 일련의 파일 이름을 찾는 것이다.
glob 모듈은 가장 간단한 모듈 중 하나로 내용이 매우 적다.특정 규칙에 맞는 파일 경로 이름을 찾을 수 있습니다.파일을 찾는 데는 세 개의 일치 문자만 사용됩니다: "*", "?",“[]”.
"*"는 0 자 이상의 문자와 일치합니다.
”?”단일 문자 일치;
"[]"는 지정된 범위 내의 문자와 일치합니다. 예를 들어 [0-9]는 숫자와 일치합니다.
다음 예시 디렉터리가 이렇다고 가정해 보세요.
dir
dir/file.txt
dir/file1.txt
dir/file2.txt
dir/filea.txt
dir/fileb.txt
dir/subdir
dir/subdir/subfile.txt
모든 파일 일치* 를 사용하여 길이에 관계없이 바이트를 일치시킬 수 있습니다.glob.glob는 비교적 자주 사용되며,list를 되돌려주고,glob도 사용할 수 있습니다.iglob 반환 생성기.
import glob
for name in glob.glob('dir/*'):
print name
dir/file.txt
dir/file1.txt
dir/file2.txt
dir/filea.txt
dir/fileb.txt
dir/subdir
하위 디렉토리 파일 어댑터하위 디렉토리 이름을 지정할 수도 있고 지정을 표시하지 않고 와일드카드로 대체할 수도 있습니다.
print 'Named explicitly:'
for name in glob.glob('dir/subdir/*'):
print '\t', name
print 'Named with wildcard:'
for name in glob.glob('dir/*/*'):
print '\t', name
Named explicitly:
dir/subdir/subfile.txt
Named with wildcard:
dir/subdir/subfile.txt
단일 바이트 와일드카드 일치* 이외에도단일 문자와 일치합니다.예를 들어 아래의 이 예는 file로 시작하여.txt 끝, 중간은 임의의 문자의 파일입니다.
for name in glob.glob('dir/file?.txt'):
print name
dir/file1.txt
dir/file2.txt
dir/filea.txt
dir/fileb.txt
문자 구간 일치 [0-9]예를 들어 일치하는 접두사 앞은 숫자의 파일이다.
for name in glob.glob('dir/*[0-9].*'):
print name
dir/file1.txt
dir/file2.txt
Ref:
공식 문서
Python Module of the Week
추가 지식: Python glob은 일치하는 파일을 반복합니다.os.makedirs () 반복 생성 디렉터리
Glob 정합 파일 반복
간략판
python에서,glob 모듈은 일치하는 파일을 찾는 데 사용됩니다
일반적인 일치 규칙:
: 모든 항목 일치
? : 문자 일치
일치하는 것이 없으면,glob.glob (path) 는 빈 list를 되돌려줍니다. []
from glob import glob
file_path = "/home/lihuiyu/Code/results_S2_W20040/*/*.pth"
print(glob(file_path))
정렬판나는 게으름을 피우는 것을 좋아하기 때문에 코딩이 해결할 수 있는 문제는 일반적으로 인공적으로 해결하지 않는다.
나는 깔끔함을 좋아한다. 그래서 코딩은 완벽을 가혹하게 요구하고, 결과는 획일적인 것을 지나치게 요구한다.
import re
from glob import glob
def atoi(s):
return int(s) if s.isdigit() else s
def natural_keys(text):
return [atoi(c) for c in re.split('(\d+)', text)]
file_path = "/home/lihuiyu/Code/results_S2_W20040/*/*.pth"
file_list = glob(file_path)
file_list.sort(key=natural_keys)
for name in file_list:
print(name)
os.makedirs () 반복 생성 디렉터리os.mkdir () 는 지정한 디렉터리를 만들지만, 이전 디렉터리가 존재하지 않으면 만들 수 없습니다.
os.makedirs () 는 디렉터리를 만드는 기능을 반복합니다.
이상의 이 Python:glob 매칭 파일의 조작은 바로 편집자가 여러분에게 공유한 모든 내용입니다. 여러분께 참고가 되고 저희를 많이 사랑해 주시기 바랍니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Python의 None과 NULL의 차이점 상세 정보그래서 대상 = 속성 + 방법 (사실 방법도 하나의 속성, 데이터 속성과 구별되는 호출 가능한 속성 같은 속성과 방법을 가진 대상을 클래스, 즉 Classl로 분류할 수 있다.클래스는 하나의 청사진과 같아서 하나의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.