Python局部变量与全局变量区别原理解析
作者:Yangyl_00 时间:2021-06-18 01:50:05
1、局部变量
name = "Yang Li"
def change_name(name):
print("before change:",name)
name = "你好"
print("after change", name)
change_name(name)
print("在外面看看name改了么?",name)
输出:
before change: Yang Li
after change 你好
在外面看看name改了么? Yang Li
2、全局变量
NAME = "alex"
def yangjian():
global NAME # 已经声明,NAME就是全局的的那个变量
print('1我的名字', NAME)
NAME = "land" # 修改 全局的变量
print('2我的名字', NAME)
def qupengfei():
name = "yang"
print('3我的名字', NAME)
yangjian()
qupengfei()
输出:
1我的名字 alex
2我的名字 land
3我的名字 yang
######## 全局变量变量名大写
######## 局部变量变量名小写
#函数中 优先读取局部变量,能读取全局变量,无法对全局变量重新赋值;但是对于可变类型,可以对内部元素进行操作;如果函数中有global关键字,变量本质上就是全局的那个变量,可读取可赋值
3、nonlocal
name = "刚娘"
def weihou():
name = "陈卓"
def weiweihou():
nonlocal name # nonlocal,指定上一级变量,如果没有就继续往上直到找到为止
name = "冷静"
print(name)
weiweihou()
print(name)
print(name)
weihou()
print(name)
# 刚娘
# 陈卓
# 陈卓
# 刚娘
全局与局部变量
在子程序中定义的变量称为局部变量,在程序的一开始定义的变量称为全局变量。
全局变量作用域是整个程序,局部变量作用域是定义该变量的子程序。
当全局变量与局部变量同名时:
在定义局部变量的子程序内,局部变量起作用;在其它地方全局变量起作用。
函数返回值
要想获取函数的执行结果,就可以用return语句把结果返回
注意:
函数在执行过程中只要遇到return语句,就会停止执行并返回结果,so 也可以理解为 return 语句代表着函数的结束
如果未在函数中指定return,那这个函数的返回值为None
嵌套函数
name = "Alex"
def change_name():
name = "Alex2"
def change_name2():
name = "Alex3"
print("第3层打印",name)
change_name2() #调用内层函数
print("第2层打印",name)
change_name()
print("最外层打印",name)
来源:https://www.cnblogs.com/Yangyl00/p/13184956.html
标签:python,局部,全局,变量
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
使用DIV+CSS设计网页的好处
2007-10-14 15:02:00
最近写的一个asp缓存函数
2008-11-25 14:07:00
Python列表删除所有出现元素的两种方法
2023-03-05 23:24:08
python循环监控远程端口的方法
2023-08-07 14:53:22
asp xml 缓存类
2011-04-03 11:20:00
使用Python脚本对Linux服务器进行监控的教程
2022-06-19 18:27:26
![](https://img.aspxhome.com/file/2023/1/109631_0s.jpg)
XML教程 WEB页面工具语言XML的定义
2008-05-29 10:54:00
对Python函数设计规范详解
2023-08-02 15:59:17
CSS扫盲(一): padding
2009-08-04 17:58:00
Python 做曲线拟合和求积分的方法
2021-03-03 01:46:07
python绘制多个曲线的折线图
2021-08-01 13:58:52
![](https://img.aspxhome.com/file/2023/6/99456_0s.jpg)
Python函数中的全局变量详解
2022-08-05 13:58:34
隐藏并修改文件的最后修改时间的asp-webshell
2009-02-28 13:31:00
![](https://img.aspxhome.com/file/UploadPic/20092/28/crackfile-48s.gif)
Python-while 计算100以内奇数和的方法
2022-03-24 12:00:39
Ubuntu20下的Django安装的方法步骤
2022-05-01 09:07:24
![](https://img.aspxhome.com/file/2023/5/81705_0s.png)
python分布式编程实现过程解析
2023-11-10 21:13:48
刚学完怎么用Python实现定时任务,转头就跑去撩妹!
2022-07-09 06:50:02
深入解析Python中的变量和赋值运算符
2023-10-13 20:58:53
![](https://img.aspxhome.com/file/2023/9/93459_0s.jpg)
在Python中操作字符串之replace()方法的使用
2021-03-15 14:10:59
只需要这一行代码就能让python计算速度提高十倍
2023-01-30 15:16:02
![](https://img.aspxhome.com/file/2023/4/89284_0s.png)