1. python字典怎麼排序
python字典怎麼排序?
定義一個字典類型
mydict = {2: '小路', 3: '黎明', 1: '郭富城', 4:'周董'}
可分別列印 key和value 看一下數據
按KEY排序,使用了 lambda和 reverse= False(正序)
key和value都輸出
reverse= True(逆序)
按value排序,漢字次序不是按拼音輸出
sorted並不改變字典本身的數據次序。
輸出後為列表和元組
可以 A = sorted(mydict.items(),key = lambda mydict:mydict[1],reverse= False) 賦值給A ,A的次序是變化後的
推薦:《Python教程》
注意事項
sorted並不改變字典本身的數據次序
如果要變化後的 可以賦值給另一個列表變數以上就是小編分享的關於python字典怎麼排序的詳細內容希望對大家有所幫助,更多有關python教程請關注環球青藤其它相關文章!
2. 請教如何用python按字母順序排序英文名字但是不可以用sort函數
代碼如下:
list = ['banana', 'apple', 'orange', 'blueberry', 'watermelon', 'strawberry', 'mango']
print(list)
list.sort()#根據字母順序排序
print(list)#['apple', 'banana', 'blueberry', 'mango', 'orange', 'strawberry', 'watermelon']
list.sort(reverse = True) #根據字母相反順序排序
print(str(list) + "
")#['watermelon', 'strawberry', 'orange', 'mango', 'blueberry', 'banana', 'apple']
(2)python字典按字母逆向排序擴展閱讀
sorted()函數四種重要的特性:
1、sorted()函數不需要定義。它是一個內置函數,可以在標準的Python安裝中使用。
2、在沒有額外的參數的情況下,sorted()函數按照升序對值進行排列,也就是按照從小到大的順序。
3、原始的numbers不會改變,因為sorted()函數提供了一個新的有序的輸出結果,並且不改變原始值的順序。
4、當sorted()函數被調用時,它會提供一個有序的列表作為返回值。
最後一點意味著列表可以使用sorted()函數,並且輸出結果可以立刻賦值給一個變數。
3. python怎麼對字典進行排序
python 字典(dict)的特點就是無序的,按照鍵(key)來提取相應值(value),如果我們需要字典按值排序的話,那可以用下面的方法來進行:
1 下面的是按照value的值從大到小的順序來排序。
dic = {'a':31, 'bc':5, 'c':3, 'asd':4, 'aa':74, 'd':0}
dict= sorted(dic.iteritems(), key=lambda d:d[1], reverse = True)
print dict
輸出的結果:
[('aa', 74), ('a', 31), ('bc', 5), ('asd', 4), ('c', 3), ('d', 0)]
下面我們分解下代碼
print dic.iteritems() 得到[(鍵,值)]的列表。
然後用sorted方法,通過key這個參數,指定排序是按照value,也就是第一個元素d[1的值來排序。reverse = True表示是需要翻轉的,默認是從小到大,翻轉的話,那就是從大到小。
2 對字典按鍵(key)排序:
dic = {'a':31, 'bc':5, 'c':3, 'asd':4, 'aa':74, 'd':0}
dict= sorted(dic.iteritems(), key=lambda d:d[0]) d[0]表示字典的鍵
print dict
4. python對字典排序,代碼如下。
tag_sorted = sorted(tag_count.iteritems(),key = operator.itemgetter(1),reverse = True)
# tag_sorted是個列表
eg.
>>> adict = dict([(x, 10+x) for x in xrange(10)])
>>> adict
{0: 10, 1: 11, 2: 12, 3: 13, 4: 14, 5: 15, 6: 16, 7: 17, 8: 18, 9: 19}
>>> sorted(adict.iteritems())
[(0, 10), (1, 11), (2, 12), (3, 13), (4, 14), (5, 15), (6, 16), (7, 17), (8, 18), (9, 19)]
>>>
對於列表是沒有.iteritems()方法的;後續代碼可以調整為:
for i,(k,v) in enumerate(tag_sorted):
print("%d %d %d"%(k,v,i))
5. python中的字典,列表分別怎樣倒過來
倒序:
lst = [1, 3, 5]
print(list(reversed(lst)))
print(lst[::-1])
2.dict是不保證順序的,雖然python3.7以上是默認有序,但不應該假設dict有序