我创建了一个函数,它简单地向分配了变量名的值打个招呼。在这里,我想使变量成为全局变量,而不使用global关键字。
name = "Messi"
def greet():
name = "Ronaldo" #I want to make a global variable without using the global keyword.
答案 0 :(得分:0)
如果您的代码这样做:
name = "Messi"
def greet():
print("Hello",name)
>>> greet()
Hello Messi
然后,函数name
中的名称greet()
将是全局名称,因为您是在模块级别分配的,而没有在较低级别重新分配的。但是,如果要为其分配新值,则必须告诉解释器它是您想要的模块级变量。这就是global
关键字的用途。
我认为您应该解释一下您真正想要做的是什么,因为从Python的角度来看,您说的内容并没有太大意义。