如果我没记错的话,两个文件相互导入并不是很好的编码习惯。
我有文件A正在导入文件B。
文件B需要使用文件A中的变量执行操作。
文件A中的变量可以更改,并且当文件B执行操作时,它需要使用文件A中的最新变量。
最好的方法是什么?
编辑:我想直接访问变量-而不是通过第三方
答案 0 :(得分:1)
使用Python shelve模块存储A中的变量,然后在启动时从B中读取搁置的db文件。该文档提供了很好的示例。
答案 1 :(得分:0)
您可以使用execfile评估Python文件的内容。
例如说这是内容vars.py
:
git_branch = 'feature/awesome'
然后script.py
可以做到:
execfile('./vars.py')
print git_branch
当然,这只是在全局范围内进行了评估,这可能会有些危险,因此更安全的选择是传递一个字典来存储在vars.py
中评估的全局变量:
vars = {}
execfile('./vars.py',vars)
print vars['git_branch']