import os
printos.path.splitext(
"path_to_file"
)[0]
from os.path import
basename
# now you can call it directly with
basename
print
basename
(
"/a/b/c.txt"
)
>>>base=os.path.
basename
('/root/dir/sub/file.ext')
>>> base
'file.ext'
>>> os.path.splitext(base)
('file', '.ext')
>>> os.path.splitext(base)[0]
'file'
>>>
>>> printos.path.splitext(os.path.
basename
(
"hemanth.txt"
))[0]
hemanth
>>> file ='/root/dir/sub.exten/file.data.1.2.dat'
>>>
print
('.').join(file.split('.')[:-1])
/root/dir/sub.exten/file.data.1.2
>>> s = 'c:\\temp\\akarmi.txt'
>>>
print
(os.path.splitext(s)[0])
c:\temp\akarmi
因此,我不需要驱动器号或者目录名,我使用:
>>>
print
(os.path.splitext(os.path.
basename
(s))[0])
akarmi
def getFileNameWithoutExtension(path):
returnpath.split('\\').pop().split('/').pop().rsplit('.', 1)[0]
getFileNameWithoutExtension('/path/to/file-0.0.1.ext')
# => file-0.0.1
getFileNameWithoutExtension('\\path\\to\\file-0.0.1.ext')
# => file-0.0.1