博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python中全局变量与局部变量
阅读量:1872 次
发布时间:2019-04-26

本文共 752 字,大约阅读时间需要 2 分钟。

python中全局变量与局部变量

标签: python


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

比如:

a = 1def 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)# 输出如下3 [1, 2] [1, 2, 3, 7]

global关键字

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

g_b = 3def t1():    global g_b    g_b = 2    g_b += 9t1()print(g_b)# 输出如下:11

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

转载地址:http://gcwbf.baihongyu.com/

你可能感兴趣的文章
人工智能药物研发
查看>>
【超级干货+福利】AIDD最全面的学习教程
查看>>
最新通知:AIDD与网络药理学资料大全
查看>>
Lammps分子动力学与第一性原理材料模拟及催化
查看>>
实习生小白的日常
查看>>
实习小白的日常(4)
查看>>
APP页面布局参考
查看>>
linux 的 Socket IO 模型
查看>>
APP调用服务器API设计
查看>>
Opencv+Zbar二维码识别(标准条形码/二维码识别)
查看>>
zbar优化
查看>>
微信扫码登录验证PHP代码(不用开放平台)
查看>>
CH554E USB单片机 10引脚小封装低成本USB方案
查看>>
通信猫调试软件(WINDOWS单文件绿色版 串口/并口/USB/TCP/UDP/HTTP/二维码。。。)
查看>>
windows MQTT客户端
查看>>
LINUX下挂载(mount)查看树莓派镜像文件
查看>>
基于CH568芯片加密SD卡方案
查看>>
1元钱的超低成本单芯片USB单片机方案
查看>>
单片机/树莓派扩展双串口(TTL和RS485)
查看>>
JAVA(android)提取WIFI客流探针MAC地址源码
查看>>