我目前是 python 的新手,我仍在学习基础知识,但有一件事我无法理解。为什么 Q.1 中的代码给出了输出 3,而 Q.2 给出了输出 [4]?当被问到时,我被告知 Q.1 底部的 f(x) 行没有给出任何变量或框来保存 def 给出的新返回值。这就是为什么 x 的输出仍然是 3 的原因。这对我来说很有意义,但是为什么 Q.2 中的输出会等于 g(x) 的返回值?这段代码中也没有任何变量或框来包含 x 的返回值。
Q.1:
def f(x):
x += 1
return x
x=3
f(x)
print(x)
问题 2:
def g(x):
x[0] = x[0] + 1
return x
x = [3]
g(x)
print(x)
婷婷同学_
慕哥6287543
慕容3067478
有只小跳蛙
相关分类