语法错误:002:on将值赋给变量python

时间:2016-03-24 13:44:10

标签: python

我正在为Uni编写一个程序来找到所有的回文素数,我已经写出了程序但是当我运行它时,我的第一个输入在尝试为变量赋值时会出错。

请有人告诉我为什么会这样!

start =input("Enter the start point N:")
starteval= eval(start)
endval = eval(input("Enter the end point M:"))
reverse=""
x=starteval+1
while x<endval:
    reverse+=start[::-1]
    evalreverse=eval(reverse)

    if evalreverse==starteval:
        if starteval==2 or starteval==3:
            print(starteval)
        elif starteval%2==0 or starteval%3==0:
            pass

        i=5
        w=2
        a=0
        while i<=starteval:
            if starteval%i==0:
                break    
            else:
                a=True
                i+=2

        if a==True:
            print (starteval)
        else:
            pass
        x+=x+1

我收到的输出是

"Enter the start point N:200
Enter the end point M:800
Traceback (most recent call last):
  File "", line 1, in <module>
    start =input("Enter the start point N:")
Syntax Error: 002: <string>, line 1, pos 3"

拜托,谢谢!

3 个答案:

答案 0 :(得分:0)

尝试使用前三行代替:

starteval = int(raw_input("Enter the start point N:"))
endval = int(raw_input("Enter the end point M:"))

答案 1 :(得分:0)

在Python 3中,整数文字不能以零开头:

>>> i = 002
  File "<stdin>", line 1
    i = 002
          ^
SyntaxError: invalid token

因为您正在将eval函数应用于字符串输入,所以Python会尝试将您的输入解析为有效的Python表达式,这就是您看到错误的原因。

使用int(input(...))获取整数更有意义(尽管在用户在代码中键入非整数时仍然需要处理引发的任何异常)。这样做的好处是接受导致您在eval中出现问题的输入。

答案 2 :(得分:0)

您可以编写一个小的 intParsing函数,为您处理简单的输入解析,然后基本上用intParsing()替换代码的每个“eval()”函数。

以下是您编辑的代码:

var size_i_want = "11";

function fRun()
{enter code here
// Select size option.
var sizesList=document.getElementsByName("skuAndSize")[0];
for(var i=0; i<sizesList.length; i++)
{
    if(sizesList.options[i].text.trim() == size_i_want)
    {
        sizesList.selectedIndex = i;
    }
}

var aButtons = document.getElementsByTagName("button");
for(var i = 0; i < aButtons.length; ++i)
{
    if(aButtons[i].className.indexOf("add-to-cart") > -1)
    {
        aButtons[i].click();
    }
}
}

function fTick()
{
if(document.getElementsByName("skuAndSize")[0] != undefined)
{
    setTimeout("fRun()", 600);
    //fRun();
}else{
    setTimeout("fTick()", 300);
}
}
setTimeout("fTick()", 300);