2013-10-05 3 views
1

Я только что начал новую версию python и понял, что многое изменилось. В любом случае, затмение появляется с красной меткой «X» рядом с номерами строк, обозначающими «Expected ::». Может кто-нибудь объяснить, что это значит, и как я могу избавиться от него?Ожидаемый :: - Использование Eclipse с PyDev

Это код, который я пытаюсь сделать работу с Eclipse, и новая версия Python:

print "Please insert a valid operator that you want to calculate with." 

print "Valid operators are +, -, : and *" 

operator = str(raw_input("What's your operator? ")) 

numb1 = int(raw_input("Please insert the first number:")) 
numb2 = int(raw_input("Please insert the second number:")) 

if operator == "+": 
print numb1 + numb2 
elif operator == "*": 
print numb1 + numb2 
elif operator == "-": 
print numb1 - numb2 
elif operator == "/": 
print numb1/numb2 

ответ

1

На Python3, print является функцией, а не утверждение, поэтому оно должно быть написано (например,)

print("Please insert a valid operator that you want to calculate with.") 

Также raw_input был переименован в input поэтому оно должно быть (например):

numb1 = int(input("Please insert the first number:")) 
+0

Но как насчет моего фактического вопроса, ожидаемого ::? – ApeBapsen

+0

Я неправильно понял ваш вопрос. Я не использую eclipse, поэтому я не знаю, что это сообщение должно сказать или означать. Я добавил тег eclipse для вас, так что, надеюсь, кто-то там это увидит и может ответить вам. –

0

Я запускал эту программу, и я не видел никаких проблем с ней, когда я запускал ее на Pydev на Eclipse, хотя я запускал ее на 2.7. возможно, это имеет какое-то отношение к вашему отступу.

operator = str(raw_input("What's your operator? ")) 

numb1 = int(raw_input("Please insert the first number:")) 
numb2 = int(raw_input("Please insert the second number:")) 

if operator == "+": 
    print numb1 + numb2 
elif operator == "*": 
    print numb1 + numb2 
elif operator == "-": 
    print numb1 - numb2 
elif operator == "/": 
    print numb1/numb2 
0

Я копирую ваш пример так же, как и его исправить. Мне просто нужно было исправить отступ, как это делал StackXchangeT.

Однако я получил Expected:: ошибку, когда не хватает отделки : в конце декларации, например:

class MyInvalidClass 

, который должен быть:

class MyInvalidClass: 

Возможно, вы получите такую ​​ошибку в подобных ситуациях где требуется : (просто догадка).