在Python中设置循环和操作

2024-09-29 01:24:48 发布

您现在位置:Python中文网/ 问答频道 /正文

如何循环两个集合并对每个集合项进行操作。或者我可以把它们列成列表或者元组,如果必要的话,我考虑过集合,因为它们没有重复的 然而,我认为这是不可能的…应该是另一种方式。这是我的代码,很有解释性,它一直工作到集合,很明显…:

def p2():
    myPrimes = set()
    myPossiblePrimes= set()
    myDividersList= set()


    for x in range(2,11):
        for y in range(1,5):
            if x%y != 0:
                print (x,'does not equally divide with',y,'and I added ',x,'into the possible set')
                myPossiblePrimes.add(x)
                myDividersList.add(y)
                def f():
                    for a in range (myPossiblePrimes):
                        for b in range (myPossibleDividers):
                            if a%b == 0:
                                myPossiblePrimes.remove(x)
                                return[myPossiblePrimes]

                filter(f(), myPossiblePrimes)
                print ('checked')
    return[list(enumerate(myPossiblePrimes))]

Tags: 代码inadd列表forreturnifdef
1条回答
网友
1楼 · 发布于 2024-09-29 01:24:48
for a in range (myPossiblePrimes):

混合了两种for循环:

for item in iterable:

for index in range(integer): # or range(len(iterable))

你只需要:

for a in myPossiblePrimes:

其他一些问题:

  1. 一个filter的函数应该有一个参数(iterable中的每一项都被过滤)和return或者True(keep item)或者False(remove item)。

  2. "myPossibleDividers" != "myDividersList"

  3. filter(f(), myPossiblePrimes)应该是filter(f, myPossiblePrimes)

相关问题 更多 >