2017-03-19 307 views
5

我知道有找到父目录或路径的功能,如。如何获取当前目录的父文件夹名称?

os.path.dirname(os.path.realpath(__file__)) 

'C:\用户\ jahon \桌面\项目\ CAA \结果\ CAA \ project_folder'

是否有刚刚返回父文件夹名称的功能?在这种情况下,它应该是project_folder

+2

你看过'os.path'中的其他功能吗?阅读文档! – jonrsharpe

+0

我检查了我没有找到东西。也许我错过了什么 –

+0

等一下,你想要当前工作目录的父母或某个文件的祖父母吗?你可以'os.path.split(os.path.split(os.path.realpath(__ file __))[0])[1]' – tdelaney

回答

3

你可以使用basename(从os.path)任何路径的最后一部分:

>>> from os.path import basename 
>>> basename('/path/to/directory') 
'directory' 

只是要注意,如果你的路径与/结束则路径的最后部分是空的:

>>> basename('/path/to/directory/') 
'' 
+0

是的你的解决方案很简单 –

8

你可以很容易地做到这一点os

import os 
os.path.basename(os.getcwd()) 
+0

这是迄今为止最简单的解决方案 –

4

是的,您可以使用PurePath

PurePath(__file__).parent.name == 'parent_dir' 
+1

哦! [**'pathlib' **](https://docs.python.org/3.4/library/pathlib.html)对我来说是新的!期待从Python 2.7.0迁移到Python 3.4。 –

+0

我仍然使用python 2.7版本。面向对象的路径方法非常好。 –

相关问题