关键字global仅在更改或创建局部上下文中有用,尽管很少将全局变量视为一个好的解决方案。
def bob(): me = "locally defined" # Defined only in local context print(me)bob()print(me) # Asking for a global variable
以上将为你提供:
locally definedTraceback (most recent call last): File "file.py", line 9, in <module> print(me)NameError: name 'me' is not defined
如果使用该global语句,则变量将在函数范围的“外部”可用,从而有效地成为全局变量。
def bob(): global me me = "locally defined" # Defined locally but declared as global print(me)bob()print(me) # Asking for a global variable
因此,以上代码将为你提供:
locally definedlocally defined
此外,由于python的性质,你还可以global在局部上下文中声明函数,类或其他对象。尽管我会建议不要这样做,因为如果出现问题或需要调试,它会引起噩梦。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)