3

我是 python 新手,我们知道,我们可以通过使用从路径获取文件 ext:

os.path.splitext(path)[1][1:]

这很好用,但似乎不太漂亮,我想问:是否有另一种更好的方法来获取文件 ext

4

1 回答 1

6

可读的方式是

name, ext = os.path.splitext(path)
ext = ext[1:]

虽然这不再是一个单一的表达方式。如果您想要一个表达式,请将其包装在一个函数中:

def extension(path):
    name, ext = os.path.splitext(path)
    return ext[1:]

请注意,在某些系统上,文件的扩展名可能为空,例如

>>> os.path.splitext('ham.')
('ham', '.')

并且您将它们视为根本没有扩展名的文件(只是ham)。通常,这种差异并不重要,但在某些情况下可能会如此,这就是为什么它会以这种splitext方式工作的原因。

于 2013-05-13T09:33:34.243 回答