首页 > 解决方案 > 如何为列表中的出现次数制作字典

问题描述

我正在尝试制作一个字典,它将列表中字符串出现的长度作为键,然后将出现的次数作为值。

例如,如果我有这个列表:

x = ['ABC','GOOGLE','BCD','GOOGLY', 'A','A']

字典结果看起来像这样:

d = {3:2, 6:2, 1:2}

键 3 表示在列表中,长度为 3 的索引出现 2 次(“ABC”和“BCD”)。

这是我能想到的最好的尝试:

d = {len(x.count()):len(x.count())  for (key, value) in x} #wrong

我怎么能这样做呢?

谢谢您的帮助!

标签: pythondictionary

解决方案


您可以分两步完成,首先创建单个项目的长度列表,然后从计数列表中创建字典。

c = [len(item) for item in x]
d = {item:c.count(item) for item in c}

推荐阅读