python - 在 Python 中,是否有一种简洁的方法来使用具有多个迭代器的列表理解?

标签 python iterator list-comprehension

基本上,我想对两个迭代器的“笛卡尔积”构建一个列表理解。考虑以下 Haskell code :

[(i,j) | i <- [1,2], j <- [1..4]]

产生

[(1,1),(1,2),(1,3),(1,4),(2,1),(2,2),(2,3),(2,4)]

我能否以简洁的方式在 Python 中获得类似的行为?

最佳答案

你是在问这个吗?

[ (i,j) for i in range(1,3) for j in range(1,5) ]

关于python - 在 Python 中,是否有一种简洁的方法来使用具有多个迭代器的列表理解?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/329886/

相关文章:

python - 我的刮刀抛出错误而不是继续

python - 查找与特定结果的方程匹配的两个数字的有效方法是什么?

python - appengine 的 OAuth2 身份验证停止工作

python - 如何为 subprocess.call 创建自定义输出流

Python 类中的列表理解

c++ - 使 C++ 中的重载成员访问运算符返回临时值

java - 迭代键集时更新条目

java - 当我事先检查是否存在元素时,为什么会引发 NoSuchElement 异常?

python - 使用列表推导式,将字符串中的所有元音转换为大写?

python - 奇怪的性能结果——循环 vs 列表理解和 zip()