python對容器內資料的排序有兩種,一種是容器自己的sort函式,一種是內建的sorted函式。
sort函式和sorted函式唯一的不同是,sort是在容器內排序,sorted生成乙個新的排好序的容器
eg陣列排序:
l=[5,2,3,1,4].
sort: l.sort()
sorted(...)
sorted(iterable, cmp=none, key=none, reverse=false) --> new sorted list
eg字典排序:
按照key倒序排列輸出
records =
recordsort= sorted(records.items(),key=lambda records:records[0],reverse=true)
f = file ('/data/ebi/meta/channelxl***port/datasrc'+date+'.csv', 'w')
for line in recordsort:
f.write(line[1]+'\n')
f.close()
ordereddict是collections中的乙個包,能夠記錄字典元素插入的順序,常常和排序函式一起使用來生成乙個排序的字典。
比如,比如乙個無序的字典
通過排序來生成乙個有序的字典,有以下幾種方式
collections.ordereddict(sorted(d.items(),key = lambda t:t[0]))
或者collections.ordereddict(sorted(d.items(),key = lambda t:t[1]))
或者collections.ordereddict(sorted(d.items(),key = lambda t:len(t[0])))
python字典陣列排序實現
python對容器內資料的排序有兩種,一種是容器自己的sort函式,一種是內建的sorted函式。sort函式和sorted函式唯一的不同是,sort是在容器內排序,sorted生成乙個新的排好序的容器 eg陣列排序 l 5,2,3,1,4 sort l.sort sorted sorted ite...
python實現字典排序 python 字典排序
引子 字典,形如 dic 字典中的元素沒有順序,所以dic 0 是有語法錯誤的。並且不可以有重複的鍵值,所以 dic.add c 4後,字典變成 待解決問題 如何根據需要可以根據 鍵 或 鍵值 進行不同順序的排序?函式原型 sorted dic,value,reverse dic為比較函式,valu...
Python字典排序的簡單實現
需要解決的問題 將一段如下引數按照key value公升序排列,最終輸出的需要將冒號替代為 各鍵值對之間通過 連線。如 abcdef 18600001234 cdefg 001 引數如下 abcdef 18600001234,cdefg 001,cdefghij 001,fghijkl 001,af...