Tomerikoo :
나는에서 내 코드의 일부를 이동하고 os.path
에 pathlib.Path
그리고 일반적으로 훨씬 낫다는 것을 발견했다.
특정 작업에 그 사실을 발견 os.path
사용하는 것이 더 편안 할 수 있습니다. 나는 주어진 일에서, 그 이름에 접미사를 추가하고 같은 루트 및 확장을 유지하여 새로운 경로를 만들려고합니다. 예를 들어,에서 :
/a/b/c/file.txt
난 갖길 원해:
/a/b/c/file_test.txt
사용 os.path
하여이 쉽게 수행 할 수 있습니다, splitext
:
>>> import os
>>> path = "/a/b/c/file.txt"
>>> base, ext = os.path.splitext(path)
>>> base + "_test" + ext
'/a/b/c/file_test.txt'
그러나, 오버가는 pathlib
의 문서를 , 나는 발견 with_name
과 with_suffix
와 같은 것을 가지고 :
>>> from pathlib import Path
>>> path = Path("/a/b/c/file.txt")
>>> path.with_suffix('').with_name(path.stem + "_test").with_suffix(path.suffix)
PosixPath('/a/b/c/file_test.txt')
어느 나는보다 훨씬 더 나쁘다 생각 os.path
버전.
이것을 달성하는 더 나은, 청소기 방법이 있나요 pathlib
?
티에리 LATHUILLE :
당신의 접근 방식의 일부를 혼합, 당신은 할 수 있습니다 :
from pathlib import Path
path = Path("/a/b/c/file.txt")
path.with_name(path.stem + '_test' + path.suffix)
# PosixPath('/a/b/c/file_test.txt')