从带有结尾斜杠的路径中提取目录的优雅方法是什么?
例如
/foo/bar/test/
我想test.
os.path.basename如果没有结局,我可以做/.
是我下一个做以下事情的最佳选择:
if directory[:-1] == '/':
basename = os.path.basename(directory[:-1])
else:
basename = os.path.basename(directory)
Run Code Online (Sandbox Code Playgroud)
因为这可能不是os不可知或非常干净.
lar*_*sks 10
电话os.path.abspath会为您处理:
>>> import os
>>> os.path.abspath('/foo/bar/test/')
'/foo/bar/test'
>>> os.path.abspath('/foo/bar/test')
'/foo/bar/test'
>>>
Run Code Online (Sandbox Code Playgroud)
所以:
>>> os.path.basename(os.path.abspath('/foo/bar/test/'))
'test'
Run Code Online (Sandbox Code Playgroud)