python3函数的四个作用域

python3的四个作用域

作用域:是访问变量时查找变量名的范围
* python3的四个作用域: LEGB

作用域英文解释英文简写
局部作用域(函数内)Local(function)L
外部嵌套函数作用域Enclosing function localsE
函数定义所在模块作用域Global(module)G
python内置模块的作用域BuiB

* 变量名查找规则:
在访问变量时,先查找本地变量,然后是包裹此函数外部的函数内的变量,之后是全局变量
最后是內建作用域内的变量
即: L –> E —> G —> B
** 在默认情况下,变量名赋值会在当前作用域内创建变量和修改变量

示例:

v = 100  # 全局作用域


def fun1():
    v = 200  # 外部嵌套函数作用域
    print('fun1.v=', v)

    def fun2():
        v = 300  # 局部作用域
        print('fun2.v=', v)
        print(max)  # max函数都没有创建,在内建函数作用域中,只读,不能改变
                    # 可以在其余三个作用域重新创建。
    fun2()


fun1()

print("全局变量.v=", v)

print(max)  # max变量定义在内置模块的作用域,是解释执行器提前定义好的
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值