2013-10-05 63 views
1

我剛啓動了新版本的python,並意識到很多變化。無論如何,日食會在行號「Expected ::」旁邊出現一個紅色的「X」標記。有人能解釋一下這意味着什麼,以及我如何擺脫它?預期:: - 在PyDev中使用Eclipse

這是我想要做的工作與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標籤,希望有人看到這個並能回答你。 –

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: 

也許你在類似的情況下,取得這樣的錯誤其中:是需要的(只是一個猜測)。