模块间的全局变量
Global variables between modules
我一直没能找到这个问题对我不起作用的原因,所以我想在这里问一个问题。
我有 2 个文件:
file2.py:
def test():
global justTry
justTry = "hello"
和main.py:
from file2 import *
def main():
print(justTry)
if __name__ == '__main__':
test()
main()
我收到错误:NameError: name 'justTry' is not defined。
为什么我不能使用 justTry
变量,我在清单之前的步骤中声明为全局变量?
当“*导入”某些东西时,它会执行代码,并将全局变量复制到您的全局变量中。但如果稍后更改了全局变量,它不会重新复制全局变量。解决方案是,在调用测试后重新导入文件
file2.py:
def test():
global justTry
justTry = "hello"
main.py:
from file2 import *
def main():
print(justTry)
if __name__ == '__main__':
test()
from file2 import *
main()
我一直没能找到这个问题对我不起作用的原因,所以我想在这里问一个问题。
我有 2 个文件:
file2.py:
def test():
global justTry
justTry = "hello"
和main.py:
from file2 import *
def main():
print(justTry)
if __name__ == '__main__':
test()
main()
我收到错误:NameError: name 'justTry' is not defined。
为什么我不能使用 justTry
变量,我在清单之前的步骤中声明为全局变量?
当“*导入”某些东西时,它会执行代码,并将全局变量复制到您的全局变量中。但如果稍后更改了全局变量,它不会重新复制全局变量。解决方案是,在调用测试后重新导入文件
file2.py:
def test():
global justTry
justTry = "hello"
main.py:
from file2 import *
def main():
print(justTry)
if __name__ == '__main__':
test()
from file2 import *
main()