Python全局变量和局部变量

局部变量

  1. 局部变量就是在函数内部定义的变量。
  2. 不同的函数内部可以定义名字相同的变量,但它们不会产生影响。
  3. 局部变量的作用,为了临时保存数据需要在需要在函数中定义变量来进行存储。

全局变量

如果一个变量既能在一个函数中使用,也可以在其他函数中使用,这样的变量就是全局变量。 
global的使用

它的功能就是如果需要在函数内定义(修改)全局变量,则要先用global进行声明。

复制代码
 1 a = 100 # 定义一个全局变量a,并初始化为100
 2 # 分别定义函数test1、test2
 3 def test1():
 4  global a # 声明函数中使用的a是全局变量
 5  print("修改前:a=%s" % a)
 6  a = 300
 7  print("修改后:a=%s" % a)
 8 def test2():
 9  print(a)
10 test1()
11 test2()
12 
13 """
14 结果如下:
15 修改前:a=100
16 修改后:a=300
17 300
18 """
复制代码
  • 在函数中不是用global声明全局变量时不能修改全局变量的本质是不能修改全局变量的指向,即不能将全局变量指向新的数据。
  • 对于不可变类型的全局变量来说,因其指向的数据不能被修改,所以不是用global时无法修改全局变量。
  • 对于可变类型的全局变量来说,因其指向的数据可以改变,所以不用global时可以修改全局变量。

转载:https://www.jb51.net/article/167741.htm

posted @   靠谱杨  阅读(277)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具

喜欢请打赏

扫描二维码打赏

了解更多

点击右上角即可分享
微信分享提示