Python 列表排序对列表的一部分无效

Python 列表排序对列表的一部分无效,python,list,sorting,Python,List,Sorting,我正在尝试对列表的一部分进行排序 我的名单是 A=[3,2,8,1,0,5,4,6,7,9] 我可以按A.sort()对整个列表进行排序 当我对列表的一部分应用sort()时,它不能按预期工作。我的名单还是一样 A[0:4].sort()-> [3,2,8,1,0,5,4,6,7,9] 我知道当我对列表的一部分进行应用时,sort()将按预期工作,但我想知道为什么sort()对列表的一部分不起作用。试试: A=[3,2,8,1,0,5,4,6,7,9] A[0:4] = sorted(A

我正在尝试对列表的一部分进行排序

我的名单是

A=[3,2,8,1,0,5,4,6,7,9]

我可以按A.sort()对整个列表进行排序

当我对列表的一部分应用sort()时,它不能按预期工作。我的名单还是一样

A[0:4].sort()-> [3,2,8,1,0,5,4,6,7,9]
我知道当我对列表的一部分进行应用时,sort()将按预期工作,但我想知道为什么sort()对列表的一部分不起作用。

试试:

A=[3,2,8,1,0,5,4,6,7,9]
A[0:4] = sorted(A[0:4])
print(A)
输出:

[1, 2, 3, 8, 0, 5, 4, 6, 7, 9]

切片创建一个正在排序的新列表;但是您的原始列表未被触动。请尝试
A[0:4]=A[0:4].sort()
dam,总是有一个重复的:)如果对列表进行切片创建一个新列表并进行排序,这不适用于numpy数组吗。这个问题的答案是,他们使用sort对numpy数组的一部分进行排序。
[1, 2, 3, 8, 0, 5, 4, 6, 7, 9]