我有两个文件:
lib.py
global var
def test():
var = "Hello!"
return
test.py
from lib import *
test()
print(var)
但是尽管它们位于同一文件夹中,当我运行 test.py 时,我收到以下错误:
Traceback (most recent call last):
File "C:\Test\test.py", line 5, in <module>
print(var)
NameError: name 'var' is not defined
如何在另一个文件的函数中访问此变量?
您需要在使用该变量的范围内将变量声明为全局变量,在本例中是函数test()
:
def test():
global var
var = "Hello!"
注意最后的return
不是必需的,因为它是隐含在函数末尾的。还,var
是在模块的全局范围内声明的,因此它不会被自动导入from lib import *
自从它被创建以来after该模块已导入。
返回var
from the function 可能是跨模块使用的更好的解决方案:
def test():
var = "Hello!"
return var
var = test()
print(var) # Hello!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)