所以我在做家庭作业时遇到了两个问题,而我在第二个问题上陷入了困境。
使用Python Set Comprehension(Python等效于Set Builder表示法)来生成所有小于100的质数的集合。回想一下,质数是一个大于1的整数,除了除本身和1.将素数集存储在变量中(其他部分将需要它)。输出您的一组素数(例如,带有打印功能)。
使用Python Set Comprehension生成一组有序对(长度为2的元组),该对对由所有小于100的素数组成的素数对组成。素数对是一对都是奇数的连续奇数对。将一组素数对存储在变量中。您的一组数字将非常有帮助。输出您的素数对集合。
对于第一个,这很完美:
r= {x for x in range(2, 101)
if not any(x % y == 0 for y in range(2, x))}
但是,我很困惑第二个。我认为我可能必须将set r的笛卡尔积乘以某种东西,但是我不确定。
这使我有点接近,但我只想要连续的对。
cart = { (x, y) for x in r for y in r
if x < y }