如何在Python中传递一个keyror2?

2024-09-29 01:21:39 发布

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

我想删除键错误2,它指出元素在集合中不存在。我试过用set(没有),我试过用excep键错误:通过…没有这些工作。有什么想法吗?在

def p6():
    myPossiblePrimes= set()
    myDividersList= set()


    for x in range(2,15):
        for y in range(2,10):
            if (x%y != 0):

                myPossiblePrimes.add(x)
                myDividersList.add(y)
            else :
                myPossiblePrimes.remove(x)
                print (x, 'does equally divide with', y, ' and I removed it from the list')

    return[print('These are my possible primes:',list(enumerate(myPossiblePrimes)), 'and these are my dividers', list(enumerate(myDividersList)))]

下面是一些返回值,这就是为什么我添加了else来从可能的 素数:

8等于2,我什么也没做 选中的 9不等于2,我把9加到可能的集合中 9等于3,我什么也没做 选中的 10等于2,我什么也没做 已检查

错误:

文件“C:\Python33\assignment 2.1.py”,第165行,第6页 我可能的时间。删除(十) 键错误:2


Tags: andinaddformy错误rangeelse
2条回答

您可以在取下之前检查钥匙:

 if (x%y != 0): 
       myPossiblePrimes.add(x)
       myDividersList.add(y)
 elif x in myPossiblePrimes:
       myPossiblePrimes.remove(x)

但是你的逻辑有一个问题,你太贪心了,不能把数字加到素数表中。试试这样的方法:

^{pr2}$

要将代码简化为问题:

if (x%y != 0):
    myPossiblePrimes.add(x)
else :
    myPossiblePrimes.remove(x)

如果还没有添加,如何删除它?在

相关问题 更多 >