我的变量不断出现语法错误。我该怎么办

时间:2015-02-25 02:45:11

标签: 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 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)

2 个答案:

答案 0 :(得分:0)

我修复了代码中的一些错误

  1. while =&gt;而
  2. 范围=&gt;范围
  3. PrimeNo%divisor = 0:=&gt; PrimeNo%除数== 0:
  4. =============================================== ========================

    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)
    

答案 1 :(得分:0)

$ python test.py
  File "test.py", line 11
    While not x==0:
              ^
SyntaxError: invalid syntax

这是Python中的一个错误。插入符应该指向'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

这次插入符号位于正确的位置! '='需要'=='。

在我完成所有这些更改后,您的程序仍然没有工作,但其余问题似乎不是语法。

(我在错位的插入符号上提交了http://bugs.python.org/issue23518。)