欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【Python基础】内部函数

程序员文章站 2024-02-12 12:39:58
...

内部函数特点:

1.可以访问外部函数的变量
2.内部函数可以修改外部函数的可变变量,比如 list
3.内部修改外部函数的不可变变量,需要加 nonlocal
4.内部函数修改全局的不可变变量时,需要在内部函数声明global变量名

def func():

    n = 100 #局部变量
    list1 = [9,3,7,6] #局部变量

   # 声明内部函数
    def inner_func(): # 对list1中的元素进行加5操作
        nonlocal n
        for index,i in enumerate(list1):
          
            list1[index] = i + n
    
        list1.sort()
        n += 5
# 调用内部函数
    inner_func()
    print(list1)
    print(n)

func()

输出:

[103, 106, 107, 109]
105
# 查看本地变量有哪些?以字典的形式输出
print(globals())
# 查看全局变量有哪些?会有一些系统的,也是以字典的形式输出
print(locals())