小编Adi*_*tya的帖子

为什么在Python中发生这种情况?是否与列表可变性有关?

如果我的问题非常简单或明显,请不要苛刻.我是一个Python新手,所以刚刚开始.

实际上这只是我在Stack Overflow上遇到的一段代码,但是找不到为什么会发生这种情况的答案,所以决定自己问一下.

我写了以下两个程序:

1)

x=[1,2,3]
y=x
print x
y=y+[3,2,1]
print x
Run Code Online (Sandbox Code Playgroud)

输出:

[1,2,3]
[1,2,3]
Run Code Online (Sandbox Code Playgroud)

2)

x=[1,2,3]
y=x
print x
y+=[3,2,1]
print x
Run Code Online (Sandbox Code Playgroud)

输出:

[1,2,3]
[1,2,3,3,2,1]
Run Code Online (Sandbox Code Playgroud)

我不明白为什么这两种输出在这种情况下是不同的?是y=y+(something)不一样的y+=(something)

我在这里失踪的是什么?

非常感谢帮助我解决这个问题

python

4
推荐指数
1
解决办法
129
查看次数

标签 统计

python ×1