Python循环(for或while)
我必须创建一个函数,它使用两个列表和一个素数,如果L与素数M相关,则生成True,否则生成False 这是我的代码,我认为它看起来不错,但问题是它不会在应该的时候产生错误,我似乎找不到错误。感谢所有能够快速找到问题的人 助手告诉我是否有素数Python循环(for或while),python,loops,Python,Loops,我必须创建一个函数,它使用两个列表和一个素数,如果L与素数M相关,则生成True,否则生成False 这是我的代码,我认为它看起来不错,但问题是它不会在应该的时候产生错误,我似乎找不到错误。感谢所有能够快速找到问题的人 助手告诉我是否有素数 def is_prime(a): prime = True if a < 2: prime = False else: for i in (2, a): if a%i =
def is_prime(a):
prime = True
if a < 2:
prime = False
else:
for i in (2, a):
if a%i == 0:
prime = False
break
return prime
例如:这里有一个应该通过的测试和一个应该失败时通过的测试
测试1:p=3->True
L1 = [0,1,4, 5, 6,10]
M1 = [0,1,1,-1,10, 1]
check.expect('T1', check_related_over_prime(L1,M1,3), True)
测试2:p=3->False
L2 = [0,1,4, 5, 6,10]
M2 = [0,1,0,1,10, 11]
check.expect('T2', check_related_over_prime(L2,M2,3), False)
对于(2,a)中的i:
对于范围(2,a)中的i应为
(2,a)
是一个元组,您只检查值2和a
,而不是介于两者之间的所有值。谢谢!这简直让我心烦意乱,非常感谢!不客气;)一般来说,如果在循环中发现错误时遇到问题,只需使用一些print(“我用数字{}.format(I))
,print(“我在if语句中”)
,等等,这样您就可以看到发生了什么。此外,请将答案标记为该答案,以便可以认为该问题已解决:)
L2 = [0,1,4, 5, 6,10]
M2 = [0,1,0,1,10, 11]
check.expect('T2', check_related_over_prime(L2,M2,3), False)