我看到很多类似的问题,但没有什么与我的问题完全相同,所以我做了我的研究。
我试图从我的函数operatingSystem
中的主文件中访问此变量install
。现在,我知道我可以通过install(operatingSystem)
传递它,但我还有其他10个变量,我不想将它们全部传递。
变量在文件开头定义为global operatingSystem
,然后在我的主文件获取时分配了一个字符串(osx
,win
或linux
)操作系统。
但是当我尝试在operatingSystem
函数中使用install
时,它只是错误。我需要在我的函数中将其称为global operatingSystem
吗?或者我还需要做其他事情吗?
答案 0 :(得分:1)
可以在函数中自由读取全局变量。要修改它,您需要使用“global”关键字。 It's all there.如果我理解你的问题就行了。
globvar = 0
def set_globvar_to_one():
global globvar # Needed to modify global copy of globvar
globvar = 1
def print_globvar():
print globvar # No need for global declaration to read value of globvar
set_globvar_to_one()
print_globvar() # Prints 1
答案 1 :(得分:0)
我实际上并没有得到你期待的东西。假设
在main.py
operatingSystem = "linux"
在yourfile.py
from main import operatingSystem
>>>operatingSystem
"linux"
这里不需要global
。所以
install(operatingSystem) #is possible