加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

如何使用迭代器将lambda函数列表应用于单个元素?

发布时间:2020-12-20 12:27:28 所属栏目:Python 来源:网络整理
导读:我想使用必须用yield创建的iterable将lambda函数列表应用于单个元素. lambda函数列表将具有类似于: [function lambda at 0x1d310c8,function lambda at 0x1d355f0] 我想使用yield来构造一个迭代来迭代列表,从左到右将每个函数应用到单个元素 解决方法 def a
我想使用必须用yield创建的iterable将lambda函数列表应用于单个元素.

lambda函数列表将具有类似于:

[<function <lambda> at 0x1d310c8>,<function <lambda> at 0x1d355f0>]

我想使用yield来构造一个迭代来迭代列表,从左到右将每个函数应用到单个元素

解决方法

def apply_all(functions,item):
    for f in functions:
        yield f(item)

用法示例:

functions = [type,id,hex]
for result in apply_all(functions,55):
    print result

<type 'int'>
20326112
0x37

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读