在Python中获取没有扩展名的文件名
如果我有一个像这样的文件名:
1.1.1.1.1.jpg 1.1.jpg 1.jpg
我怎么才能得到只有文件名,没有扩展名? 正则expression式是否合适?
在大多数情况下,你不应该使用正则expression式。
os.path.splitext(filename)[0]
这也将正确处理像.bashrc
一样的文件名保持全名。
>>> import os >>> os.path.splitext("1.1.1.1.1.jpg") ('1.1.1.1.1', '.jpg')
如果我必须用正则expression式来做这件事,我会这样做:
s = re.sub(r'\.jpg$', '', s)
不需要正则expression式。 os.path.splitext
是你的朋友:
os.path.splitext('1.1.1.jpg') >>> ('1.1.1', '.jpg')