ToolzPython 函数式编程工具箱
Toolz 是 Python 的函数式编程工具箱。Toolz 支持 Python 2.6+ 和 Python 3.3+。
Toolz 的实现包括三部分:
-
itertoolz,for operations on iterables. 例如:groupby,unique,interpose, -
functoolz, for higher-order functions. 例如:memoize,curry,compose -
dicttoolz, for operations on dictionaries. 例如:assoc,update-in,merge.
示例:
>>> def stem(word):
... """ Stem word to primitive form """
... return word.lower().rstrip(",.!:;'-\"").lstrip("'\"")
>>> from toolz import compose, frequencies, partial
>>> wordcount = compose(frequencies, partial(map, stem), str.split)
>>> sentence = "This cat jumped over this other cat!"
>>> wordcount(sentence)
{'this': 2, 'cat': 2, 'jumped': 1, 'over': 1, 'other': 1}评论
