2021-08-26 Python之内部函数
#内部函数
'''
特点:可以访问外部函数的变量
内部函数可以修改外部函数的可变类型的变量,比如list1
内部函数修改全局的不可变变量时,需要在内部函数声明global
内部函数修改外部函数的不可变的变量时,需要在内部函数中声明nonlocal
locals() 查看本地变量有哪些,以字典形式输出
globals() 查看全局变量有哪些,以字典形式输出,里面会有系统的键值对
1 def func(): 2 n=100 #局部变量 3 list1=[1,2,3,4] #局部变量 4 def inner_func(): 5 nonlocal n #在内部函数中修改外层函数变量n,用nonlocal 6 for index,i in enumerate(list1): 7 list1[index]=i+n 8 list1.sort() 9 inner_func() 10 print('打印老大n',n) 11 print('打印老二list1',list1) 12 print(list1) 13 14 func()
1 a=100 2 print(globals()) 3 4 def func(): 5 b=2 6 def in_func(): 7 global a 8 nonlocal b 9 c=8 10 c+=12 11 b+=15 12 a+=17 13 print(a,b,c) 14 15 16 in_func() 17 print(locals()) #使用locals进行查看,可以看到在当前函数中声明的内容有哪些 18 19 func()
本文来自博客园,作者:{admin-xiaoli},转载请注明原文链接:{https://www.cnblogs.com/crackerroot}