你好。我正在尝试使用在main.py
中创建的全局dict
,它在functions.py
中被调用。在我的main.py中,我有:
import sys,os,...
import functions.py #import my second file
matrix = {}
matrix_do_something
search_the_matrix(value) #which is defined in functions.py
#FILE: functions.py
def search_the_matrix(value):
global matrix
if value in matrix:
return True
else:
return False
并且我得到这个错误:
NameError: global name 'matrix' is not defined
我读过一个关于stackoverflow的解决方案,它说把所有东西都放在一个全局文件中,然后从每个文件调用global.mamatrix[value],但我不想要这样。我只想把它称为矩阵,并把它看作是我的全局矩阵。这可能吗?提前感谢
在functions.py中,您必须导入
from main import matrix
尽管我想为我的模块取一个比main更好的名字。
如果你想让一个对象在模块/文件中可用,你需要在那里创建它,或者从其他地方导入它。