【发布时间】:2014-03-13 07:32:01
【问题描述】:
所以我的家庭作业有这两个问题,我被困在第二个问题上。
使用 Python Set Comprehension(Python 相当于 Set Builder 表示法)生成一组小于 100 的所有素数。回想一下,素数是大于 1 且不大于 1 的整数可被除自身和 1 以外的任何整数整除。将素数集存储在变量中(附加部分将需要它)。输出您的素数集(例如,使用打印功能)。
使用 Python Set Comprehension 生成一组有序对(长度为 2 的元组),其中包含由小于 100 的素数组成的所有素数对。素数对是一对连续的奇数,它们是两者都是素数。将您的 Prime Pairs 集合存储在一个变量中。您的 1 号套装将非常有帮助。输出你的 Prime Pairs 集合。
对于第一个,这非常有效:
r= {x for x in range(2, 101)
if not any(x % y == 0 for y in range(2, x))}
但是,我对第二个感到很困惑。我想我可能不得不用一些东西来获取集合 r 的笛卡尔积,但我只是不确定。
这让我有点接近,但我只想要连续的对。
cart = { (x, y) for x in r for y in r
if x < y }
【问题讨论】:
标签: python set set-comprehension