Python教程:作用域与嵌套函数

枫铃3年前 (2021-09-30)Python191

一、全局变量与局部变量

在函数中定义的变量为局部变量,在程序中一开始定义的变量为全局变量;

全局变量作用域是整个程序,局部变量作用域是定义该变量的函数;

当全局变量与局部变量同名时,在定义局部变量的函数内,局部变量起作用,在其他地方,全局变量起作用。

name = 'xxr'

def change():
    name = 'vivian'
    print(name)

print(name)
change()

#输出
'''
xxr
vivian
'''

二、嵌套函数

在函数里面还可以定义函数,可以嵌套多层,在执行时被调用。

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
age = 18                   # 全局变量

def change():              # 最外层函数
    age = 20               # 最外层函数的局部变量
    print(age)             # 打印最外层函数的局部变量

    def change2():         # 第二层函数定义
        age = 22           # 第二层局部变量
        print(age)         # 打印22

        def change3():     # 第三层函数定义
            age = 24       # 第三层局部变量
            print(age)     # 打印24
        change3()          # 调用第三层函数
    change2()              # 调用第二层函数

change()

print(age)

#输出
'''
20
22
24
18
'''

相关文章

Python基础教程:正则表达式-匹配多个字符

匹配多个字符的相关格式...

python中的数据类型和常用运算符

python中的数据类型和常用运算符

一. python中常见的数据类型 整数:任何时候运算都是精确的 浮点数:运算的时候,可能会有四舍五入 字符...

RS(纠删码)技术浅析及Python实现

RS(纠删码)技术浅析及Python实现

前言 在Ceph和RAID存储领域,RS纠删码扮演着重要的角色,纠删码是经典的时间换空间的案例,通过更多的CPU计算...

Python函数的递归调用

一:递归的...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。