python练习:字典value值排序,key值排序

#字典value值排序,key值排序
from random import *
dict1 = {x:randint(5,12) for x in "aijwt"}
dict2 = {randint(5,12):y for y in "aibjwte"}
print ('dict1:',dict1)
print ('dict2:',dict2)

print ("将字典按value排序显示,办法(collections的Counter):")
from collections import Counter
print('dict1排序后:',Counter(dict1).most_common())
print('dict2排序后:',Counter(dict2).most_common())


print ("将字典按key排序显示,办法:")
dict2 = list(dict1.items())
dict2.sort(key=lambda x:x[0])    #按照列表中元组元素的的第一个元素排序
print('dict1按照key排序:',dict2)

print('\n==========================分割一下=================================\n')
a1= list(dict1)                             #字典key转为列表
a2= list(dict1.items())                     #字典元素转为列表
a3= [i for i in dict1.items()]              #字典元素转为列表

print('dict1:',dict1)
print('list(dict1) :',a1)
print('list(dict1.items()) :',a2)
print('[i for i in dict1.items()]:',a3)


#列表转为字典
print(dict(a3))

结果:

dict1: {'a': 8, 'i': 9, 'j': 11, 'w': 12, 't': 6}
dict2: {8: 'w', 6: 'e', 9: 'b', 12: 't'}
将字典按value排序显示,办法(collections的Counter):
dict1排序后: [('w', 12), ('j', 11), ('i', 9), ('a', 8), ('t', 6)]
dict2排序后: [(8, 'w'), (12, 't'), (6, 'e'), (9, 'b')]
将字典按key排序显示,办法:
dict1按照key排序: [('a', 8), ('i', 9), ('j', 11), ('t', 6), ('w', 12)]

==========================分割一下=================================

dict1: {'a': 8, 'i': 9, 'j': 11, 'w': 12, 't': 6}
list(dict1) : ['a', 'i', 'j', 'w', 't']
list(dict1.items()) : [('a', 8), ('i', 9), ('j', 11), ('w', 12), ('t', 6)]
[i for i in dict1.items()]: [('a', 8), ('i', 9), ('j', 11), ('w', 12), ('t', 6)]
{'a': 8, 'i': 9, 'j': 11, 'w': 12, 't': 6}

Process finished with exit code 0

猜你喜欢

转载自www.cnblogs.com/jxba/p/11840798.html
今日推荐