Python练习题详解之内嵌函数和闭包(小白友好)
你好!欢迎来到Python练习题详解系列。为了让小白(也就是我本人)更好的理解代码,打好编程基础,我决定仔细地解说一些练习题。欢迎阅读!奥利给!
首先,我们来看看知识点~
1. 一般的编程语言都有局部变量local variable 和全局变量 global variable 之分。函数内部的叫局部变量,函数外部的叫全局变量。在函数外边是无法访问到函数内部的局部变量的。
2. 如果希望在函数中修改全局变量(global variable)的值,应该用global关键字。如图,如果没有‘global’关键字,我们的print(count)就会输出5,因为count会自动输出是全局变量的值。
如果加上global,才可以修改全局变量的值。修改后,count就是10了。代表在函数内部修改全局变量。
3. Python函数定义是可以嵌套的,也就是允许在函数的内部创建另外一个函数,这种函数叫做内嵌函数或者内部函数。
如图,函数fun1里面嵌套了fun2,我们在定义阶段在fun1里面调用了fun2,后来输入fun1()的时候,就同时调用了fun1 和 fun2
值得注意的是:内部函数(fun2)整个作用域都在外部函数(fun1)之内。
另外需要注意的地方:如果在fun1()外部试图调用内部函数fun2(),就会报错:<