如何从Python脚本中的父目录中的Python配置文件中导入变量?

时间:2017-03-28 22:18:47

标签: python python-2.7

我有一个存储库,其中包含一些连接到各种API(Google Analytics,Amazon等)的Python脚本(ETL作业)。在将此repo部署到VPS实例时,我正在使用虚拟环境来跟踪依赖关系。我还有一个CONFIG.py文件,其中包含各种API密钥,数据库凭据等(我不受版本控制)。

就在最近,我需要连接到Google DFP API。安装googleads库(使用pip)时会有known bug,它会安装oauth2client库的较新版本,这会破坏我的Google AnalyticsAPI脚本,因为{{1} }}使用旧版google-api-python-client

因此,为了克服这个障碍,我正在考虑在我的仓库中创建一个名为oauth2client的子目录,并创建一个使用较新版本Google_DFP的新虚拟环境。这是我的回购的新结构:

oauth2client

在我的/ETL_Scripts CONFIG.py google_analytics.py google_search_console.py amazon_affiliate.py /venv /Google_DFP google_dfp.py /venv2 文件中,我使用它来导入凭据google_analytics.py,然后使用该对象连接到我的数据库(用户名,密码等)。

我的问题是:如何从from CONFIG import DB_CREDENTIALS文件中的CONFIG.py文件(在父目录中)导入变量?当我尝试导出变量时google_dfp.py - CONFIG.py - 我收到此错误:from ..CONFIG import DB_CREDENTIALS

以下是我的ValueError: Attempted relative import in non-package文件的样子:

CONFIG.py

0 个答案:

没有答案