python中全局变量与局部变量

python中全局变量与局部变量python 中全局变量与局部变量标签 python 局部变量就是定义在一个函数体内部的变量全局变量是定义在外面的变量比如 a 1deff b 2 其中 a 就是全局变量 而 b 是局部变量 局部变量只在函数体内部有效 出了函数体 外面是访问不到的 而全局变量则对下面的代码都有效 在函数体内部使用全局变量全局变量可以直接在函数体内容部使用的 你可以直接访问

python中全局变量与局部变量

标签: python


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

比如:

a = 1 def f(): b = 2 

其中a就是全局变量,而b是局部变量。局部变量只在函数体内部有效,出了函数体,外面是访问不到的,而全局变量则对下面的代码都有效。

在函数体内部使用全局变量

全局变量可以直接在函数体内容部使用的,你可以直接访问,但是注意的是,如果对于不可变类型的数据,如果在函数里面进行了赋值操作,则对外面的全局变量不产生影响,因为相当于新建了一个局部变量,只是名字和全局一样,而对于可变类型,如果使用赋值语句,同样对外部不产生影响,但是使用方法的话就会对外部产生影响。

如下面的代码:

g_b = 3;g_l1 = [1,2];g_l2 = [1,2,3] def t1(): g_b = 2 g_l1 =[] g_l2.append(7) t1(g_b,g_l1,g_l2) print(g_b,g_l1,g_l2) 

global关键字

上面说到,如果使用的是赋值语句,在函数内部相当于新建了一个变量,并且重新给了指向,但是有时候我们想把这个变量就是外部的那个全局变量,在赋值操作的时候,就是对全局变量给了重新的指向,这个时候可以通过global关键字表示我在函数里面的这个变量是使用的全局那个。使用方法如下:

g_b = 3 def t1(): global g_b g_b = 2 t1() print(g_b) 

这个时候你会发现全局变量g_b也重新指向了,这是因为global gb表示指定了函数中的g_b就是外面的那个。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/208958.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 上午10:22
下一篇 2026年3月19日 上午10:22


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号