python - 如何生成所有数字都是偶数的数字列表?

标签 python python-3.x

我有一个使用列表理解生成的数字列表,但我想让 python 检查输出,并且只在数字中的每个数字都是偶数时才打印结果(例如 266)。如果数字是偶数,例如 218,但每个数字都不能被 2 整除,则不应打印。有人可以帮忙吗?

这是我的代码:

jail=[res for res in range(200,300)if res % 2 ==0 ]
print(jail)

最佳答案

我建议直接生成您想要的数字,而不是事后过滤列表。函数 itertools.product 可用于生成所有后缀,(0, 0), (0, 2), .. 。, 等等。然后,只需将 200 添加到每个。

from itertools import product

vals = [200 + int(''.join(t)) for t in product('02468', repeat=2)]

这在某种程度上是可扩展的。假设您想要生成所有以 2000 开头并以 4888 结尾的四位偶数,那么您可以使用:

vals = [int(''.join(t)) for t in product(*(('24',) + ('02468',) * 3))]

如果您想要不太干净的边界,您可以在之后过滤结果。

关于python - 如何生成所有数字都是偶数的数字列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47145872/

相关文章:

django - 如何使用 Sendgrid 从 Heroku 中部署的 Django 应用程序发送重置密码电子邮件?

python - Azure/Django/Celery/Ubuntu | tkinter 和 libtk8.6.so 导入问题

python - 停止继承的方法从它的 super 方法内部运行

python-3.x - 在使用 tex 时将 matplotlib pyplot 保存为 pdf

javascript - HTML 页面上的 Python 输出

python - 如何在格式化用户定义标题 XLSXWriter 和 Pandas 时删除索引列

python - 使用 PySpark 将复杂 RDD 转换为扁平化 RDD

python - 尝试根据我的圆圈半径调整位置坐标(Python)

python - 在组合网络的子网上使用两种损失

python-3.x - Proxybroker - AttributeError 'dict' 对象没有属性 'expired'