检测从中调用该函数的文件的路径

时间:2019-06-26 00:17:08

标签: python python-3.x

我有两个文件

文件1

data <- structure(list(id = 1:3, multi_value_col = c("A", "D2", "Z6"), 
    single_value_col_1 = c("single_value_col_1", "single_value_col_1", 
    ""), single_value_col_2 = c("", "single_value_col_2", "single_value_col_2"
    )), row.names = c(NA, -3L), class = "data.frame")

文件2

/main/files/folder/main_file.py

from common.funs import path_fun
main():
   print(path_fun())

/main/common/funs.py中的path_fun()函数应返回/ main / files / folder /

我不想将路径作为参数传递。我希望该功能自动检测从中调用该功能的文件的路径。

2 个答案:

答案 0 :(得分:1)

您可以为此使用inspect软件包:

import inspect

def someFunction():

    somePath = inspect.stack()[1][1]
    print(somePath) 

答案 1 :(得分:0)

为什么不在main_file.py中使用os.getcwd()?

/main/files/folder/main_file.py

from common.funs import path_fun
import os
main():
   print(os.getcwd())