使用sorted對列表和字典 排序

2021-07-25 06:22:04 字數 1232 閱讀 5871

1.對列表進行排序:

方法一:可以使用列表的sort函式

list00=[2,1,4,2,1,4]

#使用sort()進行排序,sort只能對list進行排序

list11=list00.sort()

print type(list11)

print list00

print list11

輸出:

[1, 1, 2, 2, 4, 4]

none

結果可知,list00排序後並沒有將列表賦值給list11.

方法二:可以使用python內建sorted函式。

list0=[2,1,4,2,1,4]

#使用sorted 進行排序

list1=sorted(list0)

print type(list1)

print list0

print list1

[2, 1, 4, 2, 1, 4]

[1, 1, 2, 2, 4, 4]

區別:直接呼叫list.sort函式,將原有的list更改,並且不能進行賦值,即沒有list1=list0.sort()

sorted仍然可以保留原有的list不改變。

並且list排序之後的資料結構型別依然是list.

2.對字典進行排序

dict =

#對字典進行排序,按照關鍵字公升序。reverse預設為false,表示公升序

#排序的物件,後面的是個匿名函式。

dict=sorted(dict.iteritems(),key=lambda abs:abs[0],reverse=false)

print type(dict)

print dict

輸出:

[('a', 2), ('b', 7), ('c', 1), ('e', 9), ('q', 4)]

可以看到在

對字典進行排序後,其資料結構的型別已經由原來的字典變成了list.編寫**過程中注意這一點

方法二:可以使用python內建sorted函式。

集合判斷是否存在,sorted對字典進行排序

先輸入鍵值對的個數 然後輸入成對的index和value值,以空格隔開 輸出合併後的鍵值對 多行 集合判斷是否有這個元素 sorted對字典的進行排序 b a int input c set print c for i in range a contents input split key int ...

使用 sorted 為元素為列表的列表進行排序

需要對乙個形如 lst 1 2 2 1 2 2 4 4 2 4 3 3 2 5 1 1 4 10 1 3 10 10 5 10 3 5 4 6 4 1 8 8 的列表進行排序。要求子列表的排序是按照子列表中第乙個元素和第二個元素的數值大小進行排序。sorted 可以對所有可迭代物件 iterable...

sorted函式對字典的排序

在python中的sorted函式可以對字典進行排序,簡單可以分為對鍵和值的排序。sorted函式的基本形式 sorted iterable,key none,reverse false key接受乙個函式,此函式用於從每個元素中提取乙個用於比較的關鍵字 reverse是個布林值,用於決定元素排序順...