是否有从文件名中提取扩展名的功能?


当前回答

值得在那里加一个较低的,这样你就不会发现自己为什么JPG没有出现在你的列表中。

os.path.splitext(filename)[1][1:].strip().lower()

其他回答

这是在一行中同时获取文件名和扩展名的最简单方法。

fName, ext = 'C:/folder name/Flower.jpeg'.split('/')[-1].split('.')

>>> print(fName)
Flower
>>> print(ext)
jpeg

与其他解决方案不同,您不需要为此导入任何包。

import os.path
extension = os.path.splitext(filename)[1][1:]

只获取扩展名的文本,而不获取点。

我知道我迟到了

这是我的简单解决方案

file = '/foo/bar/whatever.ext'
extension = file.split('.')[-1]
print(extension)

#output will be ext

最简单的获取方法是使用mimtypes,下面是示例:

import mimetypes

mt = mimetypes.guess_type("file name")
file_extension =  mt[0]
print(file_extension)

虽然这是一个古老的话题,但我想知道为什么在本例中没有提到一个非常简单的python api rpartition:

要获取给定文件绝对路径的扩展名,只需键入:

filepath.rpartition('.')[-1]

例子:

path = '/home/jersey/remote/data/test.csv'
print path.rpartition('.')[-1]

将给您:“csv”