我正在为python中的自学习做一个简单的脚本,其中脚本依次找到第1000个素数,但是我得到了语法错误。
x = 0
y = 2
counter = x
integer = y
while (counter>999):
if (y%2 == 0 or y%3 == 0):
y = y + 1
else:(counter = counter + 1 and integer = integer + 1)
print (y)
当说到ELSE运算符之后的='赋值时,我不明白为什么它不会让我在计数器和整数中添加一个,当它在其他迭代场景中有效时
答案 0 :(得分:2)
在python中,你不能在表达式中进行赋值,以避免=
和==
之间的拼写错误。所以你必须分两行:
x = 0
y = 2
counter = x
integer = y
while (counter>999):
if (y%2 == 0 or y%3 == 0):
y = y + 1
else:
counter += 1
integer += 1
print (y)
答案 1 :(得分:0)
试试这个
else:
counter = counter + 1
integer = integer + 1
答案 2 :(得分:0)
在python中,赋值给variable没有布尔值。并且意味着布尔运算符不执行此操作。
所以你需要拆分语句。
x = 0
y = 2
counter = x
integer = y
while (counter>999):
if (y%2 == 0 or y%3 == 0):
y = y + 1
else:
counter += 1
integer += 1
print (y)