如何在子文件夹中获取脚本的路径

时间:2018-07-31 07:37:44

标签: python python-3.x path

我正面临一个问题。我有这个脚本结构:

| - folder1
|     |-script1.py
|     |-folder2
|     |     |-script2.py

script2包含代码:

pathname = os.path.dirname(sys.argv[0])
print('full path =', os.path.abspath(pathname))
path_test = os.path.abspath(pathname)

我需要引用script2.py的路径,因为我有测试数据。但是在运行script1.py之后,上述代码返回了script1.py的路径。 如果script2.py由script1.py启动,如何打印路径

2 个答案:

答案 0 :(得分:0)

改为使用内置变量pathname = os.path.dirname(__file__)

__file__

摘录自documentation

  

sys.builtin_module_names将成为文件的“路径”,除非模块是内置的(因此在{{1}}中列出),在这种情况下,   属性未设置。

答案 1 :(得分:0)

使用os模块

例如:

import os

script1Path = os.path.dirname(__file__)  
script2Path = os.path.join(script1Path, "folder2", "script2.py")
print(script2Path)