Python 我的变量不断出现语法错误。我该怎么办
变量x始终显示为语法错误。它表示要生成的素数的数目Python 我的变量不断出现语法错误。我该怎么办,python,syntax-error,Python,Syntax Error,变量x始终显示为语法错误。它表示要生成的素数的数目 x=501 while x<1 or x>500: NoNos=int(input("Number of Prime Numbers")) if x<1: print("The number has to be greater than 1") if x>500: print("The number has t
x=501
while x<1 or x>500:
NoNos=int(input("Number of Prime Numbers"))
if x<1:
print("The number has to be greater than 1")
if x>500:
print("The number has to be lesser than 500")
PrimeNo=2
PrimeNos=[]
While not x==0:
if PrimeNo==2:
PrimeNos=PrimeNos+[PrimeNo]
x=x-1
PrimeNo=PrimeNo+1
continue
for divisor in the range (2,PrimeNo-1):
if not PrimeNo%divisor=0:
x=x-1
PrimeNos=PrimeNos+[PrimeNo]
print(PrimeNos)
x=501
而x500:
NoNos=int(输入(“素数的数目”))
如果x500:
打印(“数字必须小于500”)
素数=2
素数=[]
而不是x==0:
如果PrimeNo==2:
PrimeNos=PrimeNos+[PrimeNo]
x=x-1
PrimeNo=PrimeNo+1
持续
对于(2,素数-1)范围内的除数:
如果不是素数,则无%除数=0:
x=x-1
PrimeNos=PrimeNos+[PrimeNo]
印刷品(PrimeNos)
我修复了您代码中的一些错误
x=501
while x<1 or x>500:
NoNos=int(input("Number of Prime Numbers"))
if x<1:
print("The number has to be greater than 1")
if x>500:
print("The number has to be lesser than 500")
PrimeNo=2
PrimeNos=[]
while not x==0:
if PrimeNo==2:
PrimeNos=PrimeNos+[PrimeNo]
x=x-1
PrimeNo=PrimeNo+1
continue
for divisor in range (2,PrimeNo-1):
if not PrimeNo%divisor == 0:
x=x-1
PrimeNos=PrimeNos+[PrimeNo]
print(PrimeNos)
x=501
而x500:
NoNos=int(输入(“素数的数目”))
如果x500:
打印(“数字必须小于500”)
素数=2
素数=[]
而不是x==0:
如果PrimeNo==2:
PrimeNos=PrimeNos+[PrimeNo]
x=x-1
PrimeNo=PrimeNo+1
持续
对于范围(2,素数-1)中的除数:
如果不是素数,则无%除数==0:
x=x-1
PrimeNos=PrimeNos+[PrimeNo]
印刷品(PrimeNos)
这是Python中的一个bug。插入符号应指向“While”中的大写字母“W”。您必须用所有小写字母拼写“while”
您还有其他一些打字错误:
File "test.py", line 17
for divisor in the range (2,PrimeNo-1):
^
SyntaxError: invalid syntax
此处插入符号应指向“the”,应将其删除
File "test.py", line 18
if not PrimeNo%divisor=0:
^
SyntaxError: invalid syntax
这次插入符号在正确的位置!='需要为“==”
在我做了所有这些更改之后,您的程序仍然无法运行,但剩下的问题似乎不是语法问题
(我在错误放置的插入符号上填写。)它在行中,而不是x==0:btw。前面的代码执行得很好,“PrimeNo%divisior=0”看起来可疑。它应该是一个“==”。哇,谢谢。然而,我认为我的程序会在那之后运行。无论我输入什么值,它总是返回值必须小于500。我该如何解决这个问题?非常感谢。然而,正如你提到的,它仍然是指导工作。它一直说,无论我输入什么,值都必须小于500。该部件在早期工作,并用于返回必须大于1的值,但现在返回的值必须小于500。很遗憾,我们不是通用调试服务。我愿意帮助您解决错误定位的插入符号在实际问题上误导您的情况,但是对于剩余的bug,您需要学会自己解决它们。我将提供一个提示:再次查看由
input
语句设置的变量。
File "test.py", line 18
if not PrimeNo%divisor=0:
^
SyntaxError: invalid syntax