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安全错误
数据库的锁怎样保障安全
t3用友服务器
贵阳软件开发合作
国家网络安全法宣传案例
计算机应用软件开发l论文
win7 64 服务器版
传奇3数据库玩家
埃及对网络安全国家立场
服务器的解决方法
数据库主要有哪些优化
搭建数据库api
怀旧服务器德鲁伊
服务器机房门
饥荒联机版主机服务器
关系数据库有哪些
2016学软件开发
旅社未加密网络安全吗
乌鲁木齐智能语音服务器
软件开发电脑什么要求
网络安全责任制考核自评
朱海虹浅谈网络安全
仿真软件开发教程
联想SR158服务器优化
ef调用dll连接数据库
软件开发外包如何管理
mysql数据库访问方式
搭建数据库api
数据库中增删查改格式
长沙编程软件开发教学网站
设计图片软件开发
科技互联网类文章