- 下面的代码会输出什么?
x = 'Spam'
def func():
print(x)
>>>func()
'Spam'
x是的全局变量
- 下面的代码会输出什么?
x = 'Spam'
def func()"
x = 'Ni!'
>>>func()
>>>print(x)
'Spam'
def内部的本地变量不影响全局变量
- 下面的代码会打印什么内容?
x = 'Spam'
def func():
x = 'Ni'
>>>func()
'Ni'
>>>print(x)
'Spam'
func()中的x是本地变量只在函数内起作用
- 下面的代码会输出什么?
x = 'Spam'
def func():
global x
x = 'NI!'
>>>func()
>>>print(x)
'NI!'
global将def内的本地变量变为全局变量
- 下面的代码会输出什么?
x = 'Spam'
def func()
x = 'NI!'
def nested():
print(x)
nested()
>>>func()
'NI!'
>>>x
'Spam'
嵌套函数查找最近的变量然后停止
- 这段代码会输出什么?
def func():
x = 'NI!'
def nested():
nonlocal x
x = 'Spam'
nested()
print(x)
>>>func()
'Spam'
nonlocal影响了x,可以修改本地作用域的x值
- 举出3-4种Python函数中保存状态信息的方法
全局变量,nonlocal,默认参数,类,函数属性等