python中变量范围作用域是什么
发表于:2024-12-12 作者:千家信息网编辑
千家信息网最后更新 2024年12月12日,这篇文章将为大家详细讲解有关python中变量范围作用域是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。今天学习python的量范围作用域,并记录
千家信息网最后更新 2024年12月12日python中变量范围作用域是什么
这篇文章将为大家详细讲解有关python中变量范围作用域是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
今天学习python的量范围作用域,并记录学习过程欢迎大家一起交流分享。
新建一个python文件命名为py3_scope.py,在这个文件中进行操作代码编写:
#变量作用域范围
#Local局部变量
#Enclosing封闭函数变量,闭包中常见
#Global 全局变量
#Built-in 内置模块
#python中查找一个变量准守LEGB规则
#优先从L->E->G-B查找
#定义全局变量
x = 'global x'
#定义函数,y为局部变量
#函数内有效
def test():
y = 'local y'
print(y)#调用局部变量
print(x)#调用全局变量
test()
#如果直接打印y会报错,因为是局部变量
#print(y)
#打印全局变量x
print(x)
#使用关键字global将函数内的局部变量变成全局
def test():
global x
x = 'local x'
print(x)#调用局部变量
#调用函数
test() #local x
#打印全局变量x
print(x)#local x
#函数中参数为局部变量:
def test(z):
print(z)#调用局部变量
test('local z')
#如果直接打印z会报错,因为是局部变量
#print(z)
#嵌套函数中封闭函数变量
def outer():
x = 'outer x'
def inner():
x = 'inner x'
print(x)
inner()
print(x)
#调用函数
outer()
#inner x
#outer x
#根据LEGB规则
#调用函数outer()
#先是执行inner()中的x打印
#然后执行outer()x的打印
#接下来我们注释掉inner中的x变量
def outer():
x = 'outer x'
def inner():
#x = 'inner x'
print(x)
inner()
print(x)
#调用函数
outer()
#outer x
#outer x
#结果是打印两次outer x
#调用函数outer()后,首先执行inner()
#发现没有local变量,根据LEGB规则,寻找闭包函数中的变量
#输出outer()中 x的值
#继续调用outer()中x的值,直接打印输出outer x
#接下来修改inner()中x的变量为nonlocal
#作用域为闭包函数中,不使用全局global修饰
#防止影响全局作用域
def outer():
x = 'outer x'
def inner():
nonlocal x
x = 'inner x'
print(x)
inner()
print(x)
#调用函数
outer()
#inner x
#inner x
#内置模块变量
#首先导入内置模块
import builtins
#查看内置模块中的函数等信息
print(dir(builtins))
#定义一个函数min()
def min():
pass
#这里以min()函数获取最小值为例
#m = min([1,2,3,4,5])
#print(m)
#根据变量作用域的LEGB规则,会先去Local中去找
#所以运行会出现错误,需要特别注意
关于python中变量范围作用域是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
变量
函数
局部
全局
作用
范围
模块
规则
闭包
接下来
内容
文件
文章
更多
知识
篇文章
会报
学习
输出
不错
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
天津制造软件开发配置
社交短视频软件开发
warmae服务器地址
ofo服务器超时
欧柏泰克软件开发培训
唐山市软件开发
宝山区互联网软件开发答疑解惑
桓台物流竞价报价软件开发服务
怎么学软件开发程序
全球总票房数据库在哪里找
承包商网络安全标准
北京交友软件开发怎么样
练习软件开发的好处
sonysteam服务器
宝石软件开发公司电话
浙江网络技术咨询口碑推荐
河北计算机网络技术专升本院校
自考计算机网络技术ppt
青少年网络安全宣传案例
mc服务器地图分享
oracle数据库定义表
郑州市软件开发的公司有多少
保山在线java软件开发
联通软件开发中心
魔兽世界赛季服服务器阵营比例
sql 恢复数据库
服务器连接黑屏
网络技术中的dc
腾讯云轻量型服务器咋登陆了
四川大学数据库实验报告