提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
本文主要介绍函数的闭包
提示:以下是本篇文章正文内容,下面案例可供参考
一、内部函数
#内部函数
‘’’
特点:
1.可以访问外部的函数的变量
2.内部函数可以修改外部函数的可变类型的变量例如:list1
3.内部函数修改全局的不可变变量时,需要在内部函数声明global 变量名
内部函数修改外部函数的不可变的变量时,需要在声明 nolocal 变量名
4.locals() 查看本地变量有哪些,以字典的形式输出
globals() 查看全局变量有哪些,以子弟的形式输出(注意里面会有系统的一些键值对)
‘’’
def func():
#声明变量
n=100 #局部变量
list1=[1,2,3,4] #局部变量
#声明内部函数
def inner_func():
#对 list里面的元素进行加5操作
nonlocal n
for index,i in enumerate(list1):
# 0 3
list1[index]=i+n
list1.sort()
#修改n
n +=101
#调用一下内部的函数
inner_func()
print(n)
print