다음 중 하나와 같은 파일 이름이있는 경우 :
1.1.1.1.1.jpg
1.1.jpg
1.jpg
확장자없이 파일 이름 만 가져올 수있는 방법은 무엇입니까? 정규식이 적절할까요?
답변
대부분의 경우 정규식을 사용하면 안됩니다.
os.path.splitext(filename)[0]
이것은 또한 .bashrc
전체 이름을 유지하여 올바르게 파일 이름을 처리합니다 .
답변
>>> import os
>>> os.path.splitext("1.1.1.1.1.jpg")
('1.1.1.1.1', '.jpg')
답변
정규식으로이 작업을 수행해야한다면 다음과 같이 할 것입니다.
s = re.sub(r'\.jpg$', '', s)
답변
stem 메서드를 사용 하여 파일 이름을 가져올 수 있습니다 .
예를 들면 다음과 같습니다.
from pathlib import Path
p = Path(r"\\some_directory\subdirectory\my_file.txt")
print(p.stem)
# my_file
답변
정규식이 필요하지 않습니다. os.path.splitext
당신의 친구입니다:
os.path.splitext('1.1.1.jpg')
>>> ('1.1.1', '.jpg')