我无法理解 python 中的全局和局部变量,尤其是函数。我看了很多例子,但都没有在函数调用中清楚地解释。我的示例代码如下:
def called(d):
del d[0]
b=[1]
return b
def main():
a=[0,1,2,3]
print("first ", a)
c=called(a)
print("second ", a)
main()
输出:
first [0, 1, 2, 3]
second [1, 2, 3]
我希望“a”是主要的局部变量。当我调用“被调用”函数时,a 被复制到 d。并且 d 在“被调用”处是本地的。但现实是不同的。我用“称为(a.copy)”解决了这个问题。但我想了解其中的逻辑。
一只名叫tom的猫
扬帆大鱼
相关分类