[英]How to create a dictionary out of a list?
我从 word 文档中提取了一个数字列表,以查看一天中的哪个小时给我们的访问次数最多。 我想从数字列表中创建一个键号对字典。
这些是我的数字列表
['09', '18', '16', '15', '15', '14', '11', '11', '11', '11', '11', '11', '10', '10', '10', '09', '07', '06', '04', '04', '04', '19', '17', '17', '16', '16', '16']
我的 output 应该看起来像这样
04 3
06 1
07 1
09 2
10 3
11 6
14 1
15 2
16 4
17 2
18 1
19 1
我不太清楚下一步该做什么。
提前致谢。
使用计数器:
from collections import Counter
l = ['09', '18', '16', '15', '15', '14', '11', '11', '11', '11', '11', '11', '10',
'10', '10', '09', '07', '06', '04', '04', '04', '19', '17', '17', '16', '16', '16']
result = Counter(l)
Counter({'09': 2,
'18': 1,
'16': 4,
'15': 2,
'14': 1,
'11': 6,
'10': 3,
'07': 1,
'06': 1,
'04': 3,
'19': 1,
'17': 2})
要获得most common
的元素,您可以使用:
most_common_element = result.most_common(1)[0] # prints `11`
z = ['09', '18', '16', '15', '15', '14', '11', '11', '11', '11', '11', '11', '10', '10', '10', '09', '07', '06', '04', '04', '04', '19', '17', '17', '16', '16', '16']
# trans list to dict
d = dict((int(i), z.count(i)) for i in z)
# sort dict by key
d = dict(sorted(d.items()))
print(d)
OUTPUT:
{4: 3,
6: 1,
7: 1,
9: 2,
10: 3,
11: 6,
14: 1,
15: 2,
16: 4,
17: 2,
18: 1,
19: 1}
这就是你想要的
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.