Python 全局变量 global

发布时间:2022-06-21 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Python 全局变量 global脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

Python 全局变量

 

局部变量就是定义在一个函数体内部的变量全局变量是定义在外面的变量

 

a = 1 # 全局变量是定义在函数、类外面的变量
def f():
    b = 2 # 局部变量

print(a) # 全局变量

 

引用全局变量

a = 1 # 全局变量a 是定义在函数、类外面的变量
print("line 2",id(a))
def f():
    b = a # # 全局变量 a
    print("in f() ",id(a))

f()

 

输出结果:

line 2 140719972816656
in f()  140719972816656

 

修改全局变量的值

下面的代码,在f()中修改a,此时a为新的同名变量,是一个局部变量

a = 1 # 全局变量a 是定义在函数、类外面的变量
print("line 2",id(a))
def f():
    a = 2 # # 全局变量 a ? 还是局部变量 a?
    print("in f() ",id(a))

f()

输出结果:

line 2 140719972816656
in f()  140719972816688

 

如果想在函数里面对全局变量进行修改,可以加关键词 global

a = 1 # 全局变量a 是定义在函数、类外面的变量
print("line 2",id(a))
def f():
    global a
    a = 2 # # 全局变量 a ? 还是局部变量 a?
    print("in f() ",id(a))

f()

输出结果:

line 2 140719972816656
in f()  140719972816688

 

再看一个示例:

a = 1 # 全局变量a 是定义在函数、类外面的变量
print("line 2",id(a))
def f():
    global a
    a = 2 # # 全局变量 a ? 还是局部变量 a?
    print("in f() ",id(a))
    print(a)
f()
print("line 2",id(a))
print(a)

输出结果:

line 2 140719966328592
in f()  140719966328624
2
line 2 140719966328624
2

 

脚本宝典总结

以上是脚本宝典为你收集整理的Python 全局变量 global全部内容,希望文章能够帮你解决Python 全局变量 global所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: