python "multiple"组合/链表理解

标签 python python-2.7 python-itertools function-composition

我是 python 的新手,我一直在学习列表理解以及 python 列表和字典。

所以,我想做这样的事情:

[my_functiona(x) for x in a]

..完全没问题。

但是,现在我想执行以下操作:

[my_functiona(x) for x in a] && [my_functionb(x) for x in a]

..有没有办法组合或链接这样的列表理解? - 第二个函数使用第一个列表的结果。简而言之,我想依次应用 my_functionamy_functionb 来列出 a

我确实尝试用谷歌搜索这个 - 但找不到任何令人满意的东西。 对不起,如果这是一个愚蠢的 101 问题!

最佳答案

您只需迭代第一个理解的结果:

def double(x):
    return x*2
def inc(x):
    return x+1

[double(x) for x in (inc(y) for y in range(10))]

我将内部理解设为生成器表达式,因为您不需要获取完整列表。

关于python "multiple"组合/链表理解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16653408/

相关文章:

python - 将 HTML 文件上传到 Google App Engine - 得到 405

python - python中单例类的对象有不同的id

python - 运行节拍时看不到我的 celery 日志

bash - Shell-Script Python 调用失败并出现语法错误

python - 需要帮助创建具有两个参数的输入函数

python - 使用 OR 运算符的 Itertools 排列

python - 从两个二维列表中提取值并将它们存储到 panda 数据框中

python - python 中的“无”

python - 从 Pandas 中的滚动窗口生成值组合

ruby - Python itertools 的 Ruby 等价物是什么,尤其是。组合/排列/groupby?