1. 程式人生 > >Python對字典分別按鍵(key)和值(value)進行排序

Python對字典分別按鍵(key)和值(value)進行排序

方法一:#使用sorted函式進行排序'''sorted(iterable,key,reverse)sorted一共有iterable,key,reverse這三個引數;其中iterable表示可以迭代的物件,例如可以是dict.items()dict.keys()key是一個函式,用來選取參與比較的元素,reverse則是用來指定排序是倒序還是順序,reverse=true則是倒序,reverse=false時則是順序,預設時reverse=false'''#初始化字典dict_data={6:9,10:5,3:11,8:2,7:6}1、對字典按鍵(key)進行排序#對字典按鍵(key
)進行排序(預設由小到大)test_data_0=sorted(dict_data.keys())#輸出結果print(test_data_0) #[3, 6, 7, 8, 10]test_data_1=sorted(dict_data.items(),key=lambda x:x[0])#輸出結果print(test_data_1) #[(3, 11), (6, 9), (7, 6), (8, 2), (10, 5)]2、對字典按值(value)進行排序#對字典按值(value)進行排序(預設由小到大)test_data_2=sorted(dict_data.items(),key=lambda
x:x[1])#輸出結果print(test_data_2) #[('8', 2), ('10', 5), ('7', 6), ('6', 9), ('3', 11)]test_data_3=sorted(dict_data.items(),key=lambda x:x[1],reverse=True)#輸出結果print(test_data_3) #[('3', 11), ('6', 9), ('7', 6), ('10', 5), ('8', 2)]方法二:import operator#初始化字典dict_data={6:9,10:5,3:11,8:2,7:6}#按鍵(key)進行排序test_data_4=
sorted(dict_data.items(),key=operator.itemgetter(0))test_data_5=sorted(dict_data.items(),key=operator.itemgetter(0),reverse=True)print(test_data_4) #[(3, 11), (6, 9), (7, 6), (8, 2), (10, 5)]print(test_data_5) #[(10, 5), (8, 2), (7, 6), (6, 9), (3, 11)]#按值(value)進行排序test_data_6=sorted(dict_data.items(),key=operator.itemgetter(1))test_data_7=sorted(dict_data.items(),key=operator.itemgetter(1),reverse=True)print(test_data_6) #[(8, 2), (10, 5), (7, 6), (6, 9), (3, 11)]print(test_data_7) #[(3, 11), (6, 9), (7, 6), (10, 5), (8, 2)]