如何在python中获取当前.py文件的更高级别目录的路径?
假设有这样一个目录层次结构:如何在python中获取当前.py文件的更高级别目录的路径?,python,Python,假设有这样一个目录层次结构:../a/B/main.py main.py是正在执行的文件,我需要获取文件夹A的完整路径,如何才能做到这一点?要获取当前目录的路径,可以使用: import os print os.path.realpath('.') 因为表示文件系统中的当前目录。因此,要获取更高级别目录的路径,只需将替换为。,它表示父目录 import os print os.path.realpath('..') 您还可以使用os.getcwd()方法获取当前工作目录,然后使用表示获取其父
../a/B/main.py
main.py
是正在执行的文件,我需要获取文件夹A
的完整路径,如何才能做到这一点?要获取当前目录的路径,可以使用:
import os
print os.path.realpath('.')
因为
表示文件系统中的当前目录。因此,要获取更高级别目录的路径,只需将
替换为。
,它表示父目录
import os
print os.path.realpath('..')
您还可以使用
os.getcwd()
方法获取当前工作目录,然后使用表示获取其父目录。使用os
模块:
import os
a_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
在Python 3中:
from pathlib import Path
mypath = Path().absolute().parent.parent # each '.parent' goes one level up - vary as required
print(mypath)
这难道不会让dir更高一级吗?如果父级的深度为3或4级呢?在这种情况下,我们仍然可以使用普通的unix或windows路径遍历。只需对目录路径使用“....”,更高两级。OP不要求当前目录-他想要当前执行文件的父目录-使用“.”或cwd不会这样做。