Python深入 sort和sorted區別

2021-10-01 07:22:37 字數 1206 閱讀 6037

text = [2,3,7,1,19,4]

#是否改變原list

text1 = sorted(text)

text1

out[5]: [1, 2, 3, 4, 7, 19]

text

out[6]: [2, 3, 7, 1, 19, 4]

text2 = text.sort()

text2

text

out[9]: [1, 2, 3, 4, 7, 19]

text2

# 所以,list 的 sort 方法返回的是對已經存在的列表進行操作,而內建函式 sorted 方法返回的是乙個新的 list,而不是在原來的基礎上進行的操作。

#是否可以用於其他可迭代物件

#sorted(iterable[, cmp[, key[, reverse]]])

#iterable是可迭代物件,cmp在py3中被刪除,key主要是用來進行比較的元素,reverse是否反轉

text =[('b',2),('a',1),('c',3),('d',4)]

sorted(text, key=lambda s: s[2])

traceback (most recent call last):

file "e:\anaconda\lib\site-packages\ipython\core\interactiveshell.py", line 3326, in run_code

exec(code_obj, self.user_global_ns, self.user_ns)

file "", line 1, in sorted(text, key=lambda s: s[2])

file "", line 1, in sorted(text, key=lambda s: s[2])

indexerror: tuple index out of range

sorted(text, key=lambda s: s[1])

out[17]: [('a', 1), ('b', 2), ('c', 3), ('d', 4)]

#上述即按照第元組中第二個元素進行排序

sorted(text, key=lambda s: s[1],reverse =true)

out[19]: [('d', 4), ('c', 3), ('b', 2), ('a', 1)]

python的列表排序sort和sorted

list排序可以使用python內建的sorted 函式或list自帶的sort 函式。區別 sorted 不修改原list而是建立個新list,list.sort 直接修改原list l 3 4,2 5,7 1 l new sorted l print l new,l 原list未修改 1 2,3...

Python學習筆記 sort 和 sorted

sort 與 sorted 區別 1 sort 是應用在list上的方法,sorted 可以對所有iterable進行排序操作。2 list 的 sort 方法返回的是對原來的列表進行操作,而內建函式 sorted 方法返回的是乙個新的 list,而不是在原來的基礎上進行的操作。list.sort ...

python中sort和sorted函式的區別

python中sort和sorted函式的區別 python中的sort和sorted都屬於排序函式 但是兩者有用一些區別 sort 函式排序是對列表本身進行排序,使用這個函式後,原來的list列表也會發生改變,而且呼叫方式為 列表名.sort 而且不可另外賦給乙個列表 sorted的函式是對列表排...