当我试图附加一个列表时,它的工作很奇怪。假设这是我的代码:
a = [1]
b = a
c = a
def func(a):
a.append([50])
这是输出:
a
[1]
b
[1]
c
[1]
func(c)
c
[1,50] # good till now
但是现在当我尝试打印a或b时,我应该只是[1]吗?但不,这就是我得到的:
b
[1,50]
请解释......
答案 0 :(得分:0)
这里'b'和'c'引用'a'。由于'a'是一个列表并且是可变的,因此对'a'的任何更改也将反映在'b'和'c'中。
制作对象的副本,使用
CancelEventArgs
现在将“a”,“b”或“c”传递给函数,您将为每个函数获取单独的值
干杯