【发布时间】:2014-02-20 12:41:44
【问题描述】:
Python 提供了提供映射/过滤类型功能的列表推导。我可以用这个做一个 flatMap aka 绑定操作吗?我见过使用 itertools 或其他附加库的解决方案。我可以用核心 Python 做到这一点吗?
# this
[[x,10*x] for x in [1,2,3]]
# will result in unflattened [[1, 10], [2, 20], [3, 30]]
【问题讨论】:
-
itertools包含在标准库中,因此根据定义它是“核心 Python”。 -
@adsmith:不,根据定义,它是“Python 标准库”。 OP 的含义是作为一种语言功能,例如
map和filter的列表理解语法 -
"or other add-on libraries" 表明 OP 可能没有意识到
itertools是 Python 的一部分。 -
只是因为我不想为了纯粹的学术目的而重新发明轮子,
itertools的解决方案是什么?
标签: python functional-programming