我有3个文件。在
在球蛋白.py在
global m_pTest
m_pTest = None
在文件一.py在
^{pr2}$在文件2.py在
import globalVar
def fun():
intVal = m_pTest.getInt() # int value from m_pTest object
print intVal
这是我的简短程序示例,当我运行这个程序时,它给出了文件2.py有趣()
AttributeError: 'NoneType' object has no attribute 'getInt'
有人能解释一下这个代码有什么问题吗? 谢谢您!在
为什么要使用全局变量?在
global m_pTest
并没有使变量具有神奇的全局性;相反,它在当前作用域中设置名称m_pTest
,以引用全局变量(来自外部范围)。所以把它放在globalVar.py
中基本上什么也不做。在如果只想导入变量,可以使用以下命令:
但是,当将
m_pTest
设置为不同的值时,您不会影响在globalVar.py
中创建的原始对象,因此在其他地方不会看到更改。在相反,您必须正常导入
^{pr2}$globalVar
,然后将m_pTest
作为该模块的成员:相关问题 更多 >
编程相关推荐