使用input()读取数据时出现语法错误

时间:2016-04-03 19:18:37

标签: python

我一直在尝试在python GUI上编写一个简单的计算器,但是我收到了语法错误消息。我是编程新手,所以我不确定是做什么的。

Traceback (most recent call last):
  File "C:\Users\kmart3223\Desktop\Martinez_K_Lab1.py", line 126, in <module>
    main()
  File "C:\Users\kmart3223\Desktop\Martinez_K_Lab1.py", line 111, in main
    operation = input("What operations should we do ( +, -, /, *):")
  File "<string>", line 1
    +
    ^
SyntaxError: unexpected EOF while parsing

代码

def main():
    operation = input("What operations should we do ( +, -, /, *):")
    if(operation != '+' and operation != '-' and operation != '/' and operation != '*'):
        print ("chose an operation")
    else:
        variable1 = int(input("Enter digits"))
        variable2 = int(input("Enter other digits"))
        if (operation == "+"):
            print (add(variable1, variable2))
        elif (operation == "-"):
            print (sub(variable1, variable2))
        elif (operaion == "*"):
            print (mul(variable1, variable2))
        else:
            print (div(variable1, variable2))
main()

2 个答案:

答案 0 :(得分:2)

如果您使用的是python 2x,请使用raw_input()

>>> input()         # only takes python expression
>>> input()
+
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<string>", line 1
    +
    ^
SyntaxError: unexpected EOF while parsing
>>> input()
'+'                 # string ok
'+'
>>> input()
7                   # integer ok
7
>>> raw_input()              # Takes input as string
+
'+'

答案 1 :(得分:0)

使用source代替.

raw_input()将您输入的数据解释为Python表达式。另一方面,input()返回您输入的字符串。