新學習了一些關於字典的操作:
keylst = list(mydict.keys()) #在list中列出所有的keys
vallst = list(mydict.values()) #在list中列出所有的vals
itelst = list(mydict.items()) #在list中列出所有的key與val,以tuple形式
利用items與zip對字典進行排序
items能把字典key與val拆成一對tuple(只限1個val的key)
zip函式接受任意多個序列作為引數,返回乙個tuple列表 (引用自:對zip的用法寫的很詳細
dictsortbykey = dict(sorted(mydict.items())) #以key進行排序,生成新的字典。因為items()拆出元素的順序是預設以key為先
dictsortbykey2 = dict(sorted(zip(mydict.keys(), mydict.values()))) #同上
dictsortbyval = dict(sorted(zip(mydict.values(), mydict.keys()))) #以val進行排序,生成新的字典,但是val與key互換位置
#慎用,因為當val有重複值時會導致部分key被吞掉
dictsortbyval2 = dict(zip(dictsortbyval.values(), dictsortbyval.keys())) #將上面的字典翻轉,生成原字典以val進行排序的新字典
利用sorted(iterable, key)來進行排序,一步到位
#推薦使用,單純排序。
onestepkey = dict(sorted(mydict.items(), key=lambda x:x[0])) #以key進行排序,生成新的字典
onestepval = dict(sorted(mydict.items(), key=lambda x:x[1])) #以val進行排序,生成新的字典
Python 對dict 的 keys 排序
dict的key值存放特性是散序的,即它的實際順序並不是並不是定義時你寫的那樣。可以通過sorted進行簡單的排序。例子如下 card combo map if name main print card combo map m sorted card combo map.keys for k in ...
keys可重複的字典
眾所周知,c dictionary中的keys 是不允許重複的。以前在程式中使用了dictionary,結果今天客戶要求keys 可以重複。所以為了簡單只好找個可重複的dictionary sortedlist sortedlist 物件包含用鍵 值對表示的專案。sortedlist 物件可按照字元...
在Python中用keys 方法返回字典鍵的教程
keys 方法返回在字典中的所有可用的鍵的列表。語法以下是keys 方法的語法 dict.keys 引數返回值 此方法返回在字典中的所有可用的鍵的列表。例子下面的例子顯示keys 方法的用法。usr bin python wuoerx dict print value s dictwww.cppcn...