第19课问题
def fun(var):var = 1314
print(var, end='')
var = 520
fun(var)
print(var)
为什么输出的结果是1314520??两个都输出,并且是先输出局部变量的值,再输出全部变量的值?
我的理解是不是全部变量var的值与局部变量的值同时存在。然后print(var),实际上是print(局部var,全局var) ,是这样吗?真不好理解啊 因为你先fun(var)所以打印的是局部变量值,print(var)是打印全局变量值,两互换位置就会先全局后局部。 函数内部的局部变量var与外部的全局变量var虽是同一个标签,但是指向不同的内存地址。
页:
[1]