我知道 中的partial
函数functools
,但是在一般的 Python 程序(不是:Haskell、Erlang、Clojure 等)中编写函数以在 Python 中返回函数有多常见?
例如:
>>> def returnfunk(xs):
... return lambda x: list(filter(lambda y: x == y, xs))
...
>>> fn = returnfunk(["cat", "dog", "horse"])
>>>
>>> (fn("cow") == []) == True
True
>>> (fn("cat") == ['cat']) == True
True
>>>
>>> list(filter(fn, ["zebra", "elephant", "dog", "parrot", "cat"]))
['dog', 'cat']
它是为了real (python) world
爱好,学术,兴趣而设计的吗?