python list表 sort() [:] 解释下返回的结果 谢谢

>>> list1=[4,2,5,1,9,23,32,0]
>>> list1.sort()
>>> list1
[0, 1, 2, 4, 5, 9, 23, 32]
>>> list1.sort(reverse=True)
>>> list1
[32, 23, 9, 5, 4, 2, 1, 0]
>>> list2=list1[:]
>>> list2
[32, 23, 9, 5, 4, 2, 1, 0]
>>> list3=list1
>>> list3
[32, 23, 9, 5, 4, 2, 1, 0]
>>> list1.sort()
>>> list1
[0, 1, 2, 4, 5, 9, 23, 32]
>>> list2
[32, 23, 9, 5, 4, 2, 1, 0]
>>> list3

[0, 1, 2, 4, 5, 9, 23, 32]

能详细解释下list 1 2 3 的返回的值的过程吗  谢谢


慕粉1031201794
浏览 1419回答 3
3回答

孤独的小猪

我已经详细的用图解释了一下,如果还有不懂的地方,可以追问。

aaaaaaaaten

sort()就是对当前列表排序,没什么好说的,主要是[:]是复制列表,中括号里面有个:是列表切片,比如list[1:4]是取下标从1到4的元素生成一个新列表,或者list[:3]取前3个元素生成一个新列表,所以[:]是从第1个元素到最后一个元素生成一个新列表,也就是复制一份;而如果直接赋值list3=list1的话,其实list3和list1都指向同一个列表,也就是引用,所以操作list1,list3也会变
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python