arf*_*nha 3 python lambda iterator yield list
我想使用必须用yield创建的iterable将lambda函数列表应用于单个元素.
lambda函数列表将具有类似于:
[<function <lambda> at 0x1d310c8>, <function <lambda> at 0x1d355f0>]
Run Code Online (Sandbox Code Playgroud)
我想使用yield来构造一个迭代来迭代列表,从左到右将每个函数应用到单个元素
def apply_all(functions, item):
for f in functions:
yield f(item)
Run Code Online (Sandbox Code Playgroud)
用法示例:
functions = [type, id, hex]
for result in apply_all(functions, 55):
print result
Run Code Online (Sandbox Code Playgroud)
给
<type 'int'>
20326112
0x37
Run Code Online (Sandbox Code Playgroud)