列表是这个:
List1 = ['a','b','c','d','e','f','g','h','h','i','j','k','l','m','n']
我希望结果是每次出现在列表中的项目都分配一个整数,例如:
List1 = ['a:1']
不使用“导入计数器”模块
答案 0 :(得分:1)
您可以使用此列表理解:
dict((x, List1.count(x)) for x in set(List1))
示例输出:
{'d': 1, 'f': 1, 'l': 1, 'c': 1, 'j': 1, 'e': 1, 'i': 1, 'a': 1, 'h': 2, 'b': 1, 'm': 1, 'n': 1, 'k': 1, 'g': 1}
答案 1 :(得分:0)
(已编辑,以匹配已编辑的问题。)
使用字典理解和count
。
>>> List1 = ['a','b','c','d','e','f','g','h','h','i','j','k','l','m','n']
>>> mapping = {v: List1.count(v) for v in List1}
>>> mapping
{'a': 1, 'b': 1, 'c': 1, 'd': 1, 'e': 1, 'f': 1,
'g': 1, 'h': 2, 'i': 1, 'j': 1, 'k': 1, 'l': 1, 'm': 1, 'n': 1}