gpt4 book ai didi

python - python问题中的排序列表

转载 作者:行者123 更新时间:2023-11-28 21:24:00 26 4
gpt4 key购买 nike

我几天前开始学习 python(之前没有编程经验或知识),目前我无法理解以下内容:假设我有一个未排序的列表“b”,我想对一个看起来与列表“b”一模一样的列表“c”进行排序:

b = [4,3,1,2]
c=b
c.sort()

print b
print c

我发现 b 和 c 都是排序的:[1,2,3,4][1,2,3,4]

为什么会这样?

当我创建“b”列表的副本时,这个解决方案似乎非常有效:

b = [4,3,1,2]
c=b[:]
c.sort()

print b
print c

结果:[4,3,1,2][1,2,3,4]

但为什么第一个解决方案不起作用?

谢谢。

最佳答案

您似乎已经明白 c = bc = b[:] 不同。在第一种情况下,c 引用与 b 相同的对象。在后者中,它引用了 b 的副本。

因此,由于 b.sort()b 引用的列表进行排序,所以当您检查 c 时,这并不奇怪也已排序 - 因为它是同一个对象

将排序列表与原始列表分离的常用方法是

c = sorted(b)

关于python - python问题中的排序列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16630237/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com