Python初学者零碎基础笔记(三)全局变量与局部变量,闭包变量的区分用法

本文详细介绍了Python中的全局变量、局部变量和闭包变量的区分及其使用规则。包括内建、全局、闭包和局部作用域的概念,同名变量的查找规则,以及如何在函数内部修改全局和闭包变量的正确方法。通过多个示例阐述了变量的调用和修改,展示了不同作用域的影响。
摘要由CSDN通过智能技术生成

全局变量与局部变量,闭包变量的区分

先扩展:

  1. 内建作用域:系统的函数和变量,在所有的文件中都可以使用
    例:print(max(1,2,344,55)) # max属于内建作用域
  2. 全局作用域:在一个代码文件中,变量(必须在函数外定义) 从定义开 始到本文件结束
  3. 闭包作用域:嵌套函数中,外部函数里 变量从定义开始到函数结束
  4. 局部作用域: 在一个函数里,变量从定义开始到函数结束
  5. 内建作用域 > 全局作用域 >闭包作用域>局部作用域
    6 .) 变量同名问题: 变量查找规则: 从下往上,从里往外

(一)-------------------先区分全局变量与局部变量
1.全局变量的调用

name='小明'  #全局变量(公共的,函数外定义,大家都可以调用)
def func():
    print(name) #调用的是全局变量
func()
print(name)    
def func1():
    print(name) #调用的是全局变量
func1()  
>>>小明
>>>小明
>>>小明

2.全局变量和局部重名,在函数里局部优先(例题小红)

name='小明'  #全局变量(公共的,大家都可以调用)
def func():
    print(name) #调用的是全局变量
def func1():
    name="小红"  #局部变量
    print(name) #有局部变量先调用的是局部变量
func()   
func1() 
>>>小明
>>>小红

3.在函数,全局变量可以读取,不能直接修改;如果在函数中修改全局变量,必须施工global声明
例如:改变全局变量错误做法


                
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Calorie_Wu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值