【问题标题】:How can I convert this Function to list comprehension in python? [duplicate]如何将此函数转换为 python 中的列表理解? [复制]
【发布时间】:2019-02-28 14:41:42
【问题描述】:
def extract_and_apply(l, p, f):
    result = []
    for x in l:
        if p(x):
            result.append(f(x))
    return result 

我是 python 新手,我必须将此函数转换为列表理解,我无法弄清楚。非常感谢您的帮助。

【问题讨论】:

  • 嘿,那里有很多关于如何处理其中许多情况的理解的示例,以及如果您搜索主题 list comprehnsion

标签: python


【解决方案1】:
result = [f(x) for x in l if p(x)]

您可以在列表推导中编写 if 语句

【讨论】:

    【解决方案2】:

    列表推导使用与嵌套循环相同的顺序。

    for a in blist:
         for c in dlist:
               if c in elist:
                   result.append((a, c))
    

    可以写成:

    result = [(a,c) for a in blist for c in dlist if c in elist]
    

    注意:词序相同。当它变得混乱时,我只需写出嵌套循环并删除换行符和冒号。

    【讨论】:

      猜你喜欢
      • 2022-01-12
      • 2020-03-12
      • 2017-11-23
      • 1970-01-01
      • 2019-10-21
      • 1970-01-01
      • 1970-01-01
      • 2022-10-07
      • 2020-12-31
      相关资源
      最近更新 更多