0. 如果希望在函数中修改全局变量的值,应该使用什么关键字?
答:global
1. 在嵌套的函数中,如果希望在内部函数修改外部函数的局部变量,应该使用什么关键字
答:nonlocal
2. Python 的函数可以嵌套,但要注意访问的作用域问题哦,请问以下代码存在什么问题呢?
def outside():
print('I am outside!')
def inside():
print('I am inside!')
inside()
答:inside 在内置函数中未输出,即未被定义。
3. 请问为什么代码 A 没有报错,但代码 B 却报错了?应该如何修改?
代码A:
def outside():
var = 5
def inside():
var = 3
print(var)
inside()
outside()
代码B:
def outside():
var = 5
def inside():
print(var)
var = 3
inside()
outside()
答:报错原因:代码B的inside( )函数对未定义对象var进行读取
4. 请问如何访问 funIn() 呢?
def funOut():
def funIn():
print('宾果!你成功访问到我啦!')
return funIn()
答:直接调用funOut()函数。
5. 请问如何访问 funIn() 呢?
def funOut():
def funIn():
print('宾果!你成功访问到我啦!')
return funIn
答:调用funOut()()
6. 以下是“闭包”的一个例子,请你目测下会打印什么内容?
def funX():
x = 5
def funY():
nonlocal x
x += 1
return x
return funY
a = funX()
print(a())
print(a())
print(a())
答:
6
7
8
0.动动手
字符串文档下载不了。略。