def make_file_list(self, prefix) -> List[str]:
files = list()
for ext in self.ext_patterns:
pattern = f"{prefix}/**/*.{ext}"
logging.debug(f"searching for {pattern} started.")
paths = [path for path in glob.glob(pattern, recursive=True)]
# paths = [f"'{path}'" for path in glob.glob(pattern, recursive=True)]
files.extend(paths)
logging.debug(f"searching for {pattern} finished({len(paths)} files found).")
logging.debug(f"{len(files)} files are found")
return files
PurePath.**stem**
suffix가 없는, 마지막 경로 구성 요소:>>>
**>>>** PurePosixPath('my/library.tar.gz').stem 'library.tar' **>>>** PurePosixPath('my/library.tar').stem 'library' **>>>** PurePosixPath('my/library').stem 'library'
The method unlink() removes (deletes) the file path . If the path is a directory, OSError is raised.
from pathlib import Path
path = Path("parentdirectory/mydirectory")
path.mkdir(parents=True, exist_ok=True)
pathlib 모듈에서는 경로를 객체로써 조작한다.
컨스트럭터 pathlib.Path()로 Path 객체를 생성할 수 있다. 인수로 경로의 문자열을 지정한다. 상대경로든 절대경로든 상관없이 모두 가능하다.
import pathlib
import os
import pprint
p_file = pathlib.Path('temp/file.txt')
print(p_file)
# temp/file.txt
print(type(p_file))
# <class 'pathlib.PosixPath'>
예를 Mac에서 실행한다면, Mac을 포함한 Unix계 OS의 클래스인 PosixPath형의 인스턴스가 생성된다. 한편, Windows에서 실행한다면 WindowsPath형이 된다.