在Python中使用globals()的原因是什么?

15 浏览
0 Comments

在Python中使用globals()的原因是什么?

Python中存在globals()函数的原因是什么?它只返回全局变量的字典,这些变量已经是全局的,因此可以在任何地方使用...我只是出于好奇,想学习Python。

def F():
    global x
    x = 1
def G():
    print(globals()["x"]) #将返回全局变量'x'的值,即1
def H():
    print(x) #也将返回全局变量'x'的值,也是1
F()
G()
H()

我真的看不出这里的意义在哪里?唯一需要它的时候是,如果我有相同名称的局部和全局变量。

def F():
    global x
    x = 1
def G():
    x = 5
    print(x) #5
    print(globals()["x"]) #1
F()
G()

但是你不应该遇到同名的两个变量并且需要在同一范围内同时使用它们的问题。

0