Python 代码阅读合集介绍:为什么不推荐Python初学者直接看项目源码
本篇阅读的代码实现了从一个列表生成以其元素为key
,以该元素出现频率为value
的字典。
本篇阅读的代码片段来自于30-seconds-of-python。
frequencies
from functools import reduce def frequencies(lst): f = {} for x in lst: f[x] = f[x] + 1 if x in f else 1 return f # EXAMPLES frequencies(['a', 'b', 'a', 'c', 'a', 'a', 'b']) # { 'a': 4, 'b': 2, 'c': 1 }
frequencies
函数接收一个列表,返回以该列表元素为key
,以该元素出现频率为value
的字典。函数使用for
循环遍历输入列表,遇到字典中存在的值的时候,将该值对应的value
加1
;遇到不存在的值时,将该值作为新的key
并将value
设置为1
。