爲什麼執行以下操作:打印排序列表
print([7,1,0].sort())
生產:
None
在執行下列操作:
a = [7,1,0]
a.sort()
print(a)
生產:
[0, 1, 7]
?
爲什麼執行以下操作:打印排序列表
print([7,1,0].sort())
生產:
None
在執行下列操作:
a = [7,1,0]
a.sort()
print(a)
生產:
[0, 1, 7]
?
因爲在第一個示例print([7,1,0].sort())
中,您正在打印的值由sort()
返回,並且sort()
不返回任何內容。 雖然後來您正在執行sort()
的列表a
,然後打印列表a
。
Sort()
更改列表中元素的順序a
並且不返回任何內容。
使用sorted()
獲取排序列表作爲返回值。
因爲.sort()
操作列表上,並返回None
,而print(sorted(a))
打印你想要什麼,但不改變列表
sort()
排序列表中,但返回None
。你可能想要sorted
。
print(sorted([7,1,0]))
的.sort()
方法排序到位列表並返回None
。列表變得有序,這就是爲什麼打印列表顯示期望值。但是,print(x.sort())
打印的結果爲sort()
,sort()
返回None
。
我不會添加另一個答案,而是以不同的方式陳述當前的答案:'sort'修改你給它的列表,但不返回任何東西。 'sorted'創建列表的副本,對副本進行排序並返回排序的副本。它保持原來的列表不變。 – Carcigenicate
只是一個提示:我沒有降低評分,但你確實擁有的低估可能是因爲通過檢查文檔可以回答這個問題。 ***總是***檢查文檔,如果你對功能的操作感到困惑。如果您不使用自動顯示文檔的IDE,則應在編寫時在瀏覽器中打開Python文檔。 – Carcigenicate