我对python相当陌生,我正在尝试在文件之间调用其他变量。下面是我想做的尽可能简单的事情:
file1.py-
from file2 import *
global food
food = "pizza"
eat()
file2.py-
def eat():
print ("I want to eat some", food)
在我的小脑子里,这应该只是打印"我想要吃一些披萨",但我却得到python错误:
Traceback (most recent call last):
File "file1.py", line 6, in <module>
eat()
File "<path>/file2.py", line 2, in eat
print ("I want to eat some", food)
NameError: name 'food' is not defined
任何关于为什么会发生这种情况的帮助,或者一个解决方案,将是非常感谢的。
附加信息:我的主要目标是整合程序中的代码,使初始源代码更容易阅读和更短。我知道这可能不是最佳实践,但现在我只是在试验和学习。非常感谢您的宝贵时间!
尽量避免使用全局变量,而是使用形参直接将值传递到函数的作用域。
main.py
from file2 import *
food = "pasta"
eat(food)
file2.py
def eat(food: str):
print ("I want to eat some " + food)