【问题标题】:Access parent module variable from sub directory从子目录访问父模块变量
【发布时间】:2020-04-15 08:20:51
【问题描述】:
需要一些帮助来理解在 python 3 中导入包。我有一个带有模块“connection.py”的子目录。我需要从父目录模块“credentials.py”访问变量。我将如何正确引用这个?我试过
从 benchchart.credentials 导入 client_id、client_secret、redirect_uri、access_code、access_token、refresh_token
这不太奏效。这给了我一个错误
'ModuleNotFoundError: 没有名为 'benchchart' 的模块'
Screenshot for folder structure is attached
【问题讨论】:
标签:
python
python-3.x
plotly-dash
【解决方案1】:
当您尝试在没有目录上下文的情况下导入时,例如
from x import y
Python 将在已安装的库目录site-packages 中查找。
要导入本地模块,您需要为当前目录指定 . 或为上面的一个目录指定 ..,例如因为credentials.py 是connections.py 的上一级目录,所以你需要与.. 一起上一级:
from ..credentials import client_id
如果您想从同一目录中的credentials.py 导入,请使用. 指定它:
from .credentials import client_id