Python:glob 파일 일치 작업

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 매칭 파일의 조작은 바로 편집자가 여러분에게 공유한 모든 내용입니다. 여러분께 참고가 되고 저희를 많이 사랑해 주시기 바랍니다.

좋은 웹페이지 즐겨찾기