我想了解排序的工作原理,特别是:
>>> a=[2,4,5,1]
>>> a
[2, 4, 5, 1]
>>> b=a
>>> b
[2, 4, 5, 1]
>>> b.sort()
>>> b
[1, 2, 4, 5]
>>> a
[1, 2, 4, 5]
为什么当我将sort()应用于从“a”复制的列表“b”时,sort()也会更改列表“a”?
答案 0 :(得分:1)
您没有说明我们正在谈论的编程环境。我的最佳猜测:b
是对a
的引用,因此排序b
基本上意味着隐式排序a
。
答案 1 :(得分:0)
好的,我只是靠自己解决......
>>> a=[2,4,5,1]
>>> b=a[:]
>>> b
[2, 4, 5, 1]
>>> b.sort()
>>> b
[1, 2, 4, 5]
>>> a
[2, 4, 5, 1]
由于
答案 2 :(得分:0)
输入"对象" typeof b" object"
在Javascript"对象"通过引用传递。
所以a和b指的是同一个对象。所以排序" a"会对" b"。
产生同样的影响