2012-12-05 145 views
6

我無法弄清楚爲什麼if語句不能在Python 3中工作。我一直使用python 2.7,但我需要熟悉3.這是我的代碼爲什麼這個if語句不起作用? python 3

print("Answer the question! [(Y)es or (N)o]: ") 
answer = input() 
print(answer) 

if answer == "y": 
    print("OK") 

print("done") 

我開始這段代碼,得到問題提示,好的,這是正常的。對於輸入,我給它一個小寫的y。我看到'y'打印回給我,但是程序繞過了if語句並直接完成。我做錯了什麼簡單的事情?

+1

是什麼打印,如果你'打印(再版(回答))'?那麼print(repr(「y」))'? –

+1

Python 3.3似乎對我來說工作得很好。假設正如其他人在下面(和上面)所說 - 必須有輸入內容。 – RocketDonkey

+2

這是您正在運行的代碼的*精確副本*嗎? –

回答

1

那麼對於初學者,你的代碼工作!我已經在線測試它,它工作。可能與您的IDE或您正在使用的任何Python有關。使用Jython時我有這樣的錯誤。

But it works here!

+0

嗯,必須與aptana有關。謝謝! –

1

我沒有看到任何問題http://ideone.com/Vk9Hdo, 試試這個:

print("Answer the question! [(Y)es or (N)o]: ") 
answer = input() 
print(answer) 

if answer == "y": 
    print("OK") 

print("done") 

輸出

Answer the question! [(Y)es or (N)o]: 
y 
OK 
done 
+1

'raw_input'在Python 3中不存在。它被重命名爲'input'。 –

+0

ohh right,did not know that(from python2) –

+0

是什麼讓你覺得把''y''改成''y''會有什麼區別? –

相關問題