尽管python不是纯函数编程语言,lambda语法很不友好,但它是门多范式语言,可以方便进行扩展(如fn、pymonad、hylang),这里主要介绍fn。
fn是个python的函数式编程(Functional Programming, FP)库,极大方便了python fp。
(本准备写个教程,发现官方文档写得很详细…以下内容从 https://github.com/kachayev/fn.py搬运。)
1. lambda定义(“-“)
from fn import _
print (_ + 2) # "(x1) => (x1 + 2)"
print (_ + _ * _) # "(x1, x2, x3) => (x1 + (x2 * x3))"