Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从路径中提取带有斜杠的目录_Python - Fatal编程技术网

Python 从路径中提取带有斜杠的目录

Python 从路径中提取带有斜杠的目录,python,Python,从带有结束斜杠的路径中提取目录的优雅方法是什么 比如说 /foo/bar/test/ 我想要测试 如果没有结尾,我可以执行os.path.basename 是我的下一个最佳选择,可以执行以下操作: if directory[:-1] == '/': basename = os.path.basename(directory[:-1]) else: basename = os.path.basename(directory) 因为这可能不是操作系统不可知或非常干净。调用o

从带有结束斜杠的路径中提取目录的优雅方法是什么

比如说

/foo/bar/test/

我想要
测试

如果没有结尾,我可以执行
os.path.basename

是我的下一个最佳选择,可以执行以下操作:

  if directory[:-1] == '/':
    basename = os.path.basename(directory[:-1])
  else:
    basename = os.path.basename(directory)

因为这可能不是操作系统不可知或非常干净。

调用
os.path.abspath
将为您解决这一问题:

>>> import os
>>> os.path.abspath('/foo/bar/test/')
'/foo/bar/test'
>>> os.path.abspath('/foo/bar/test')
'/foo/bar/test'
>>> 
因此:


嗯,看起来史蒂文和我差不多在同一时间提交了相同的答案。好人@StevenRumbalski
>>> os.path.basename(os.path.abspath('/foo/bar/test/'))
'test'