假设我在不同的目录中有两个文件:1.py
(例如,C:/FIRST_FOLDER/1.py
}和2.py
(例如,C:/SECOND_FOLDER/2.py
)。
文件1.py
导入2.py
(使用sys.path.insert(0, #path_of_2.py)
,显然是import 2
),并调用2.py
中的一个函数,函数调用需要知道1.py
的绝对路径(它在同一目录中查找文件)。
我知道inspect.stack()[1]
,但这只返回文件名而不是路径。
关于如何实现这个的任何想法?
答案 0 :(得分:2)
要返回python文件的绝对路径,请使用python的__file__
属性:
import os
path = os.path.abspath(__file__)
答案 1 :(得分:1)
import inspect
import os
abs_path = os.path.abspath((inspect.stack()[0])[1])
directory_of_1py = os.path.dirname(abs_path)
有关模块os.path
的更多信息