import sys
import random
reload(sys)
sys.setdefaultencoding('utf-8')
//這種字典,要對值進行按大小排序
data_str=['xie','zhao','chen']
data_dic=
print data_dic.keys()
//列印字典的所有鍵
print data_dic.values()
//列印字典的所有值
prinr data_dic.items()
//返回列表形式的字典,(就是列表)可以使用列表索引list[1]選擇元素
print data_dic.viewkeys()
//列印字典所有鍵的集合,集合可以用去交集並集去重複
print sorted(zip(data_dic.values(),data_dic.keys()))
//zip()函式用於將可迭代的物件作為引數,將物件中對應的元素打包成乙個個元組,然後返回由這些元組組成的列表。
//結果:[(64, 'xie'), (72, 'chen'), (75, 'zhao')]
print sorted(data_dic.items(),key=lambda x:x[1])
//sorted()中有key,cmp,reverse三種方法。
//結果:[('xie', 64), ('chen', 72), ('zhao', 75)]
//當然還可以轉換成字典的形式
print dict([('xie', 64), ('chen', 72), ('zhao', 75)])
一般來說用的最多的是key,key接受乙個函式。比如key=abs(絕對值),或者先定義乙個函式,然後把這個函式賦給keycmp指定乙個定製的比較函式,這個函式接收兩個引數(iterable的元素),如果第乙個引數小於第二個引數,返回乙個負數;如果第乙個引數等於第二個引數,返回零;如果第乙個引數大於第二個引數,返回乙個正數。預設值為none。
key指定乙個接收乙個引數的函式,這個函式用於從每個元素中提取乙個用於比較的關鍵字。預設值為none。
reverse是乙個布林值。如果設定為true,列表元素將被倒序排列。
from collections import ordereddict
//ordereddict能夠對字典的值進行排序,只列印鍵,需要注意的是要先把字典賦給ordereddict
data_dic = ordereddict()
data_dic=
for x in data_dic:print x
結果:chen
zhao
xie
ordereddict的方法適用於只看鍵的排序,應用程式一般用作按照值排序好之後,檢視鍵。 python字典按照鍵和值進行排序
排序首先想到python的sorted 和sort sort 與 sorted 區別 1.sort 是應用在 list 上的方法,sorted 可以對所有可迭代的物件進行排序操作。2.list 的 sort 方法返回的是對已經存在的列表進行操作,而內建函式 sorted 方法返回的是乙個新的 lis...
字典按照值或鍵進行排序
sorted iterable,key,reverse sorted一共有iterable,key,reverse這三個引數 引數作用 iterable 可迭代物件 例如 dict.items dict.keys 等 key用來選取參與比較的元素,例如確定是按照字典的鍵比較還是按照值進行比較 rev...
python 對字典按照value進行排序
字典按照value進行排序共有三種方法 d 第一種方法,key使用lambda匿名函式取value進行排序 a sorted d.items key lambda x x 1 a1 sorted d.items key lambda x x 1 reverse true print a print ...