2013-10-23 83 views
-3

每當我使用下面的代碼,它給我一個語法錯誤。輸入錯誤Python 3.3

print('1. Can elephants jump?') 
answer1 = input() 
if answer1 = 'yes': 
    print('Wrong! Elephants cannot jump') 
if answer1 = 'no': 
    print('Correct! Elephants cannot jump!' 

我認爲這與一個字符串有什麼關係不能相等的東西?

+3

它始終是一個好主意,張貼在您的文章中的錯誤消息太 – ModulusJoe

+1

你在第一行有一個'IndentationError',它阻止你甚至到達第一個'SyntaxError'。 – abarnert

回答

3

您正在使用分配(一個=),而不是平等的測試(雙==):

if answer1 = 'yes': 

if answer1 = 'no': 

雙倍===

if answer1 == 'yes': 

if answer1 == 'no': 

您還缺少一個右括號:

print('Correct! Elephants cannot jump!' 

末添加缺少的)

2

你在最後print缺少一個右括號:

print('Correct! Elephants cannot jump!') 
#        here--^ 

此外,您還需要使用==進行對比測試,而不是=(這是變量賦值)。

最後,您應該使用elif來測試某件事或另一件事。

更正代碼:

print('1. Can elephants jump?') 
answer1 = input() 
if answer1 == 'yes': 
    print('Wrong! Elephants cannot jump') 
elif answer1 == 'no': 
    print('Correct! Elephants cannot jump!') 
+0

謝謝,我要求一個更正,並得到3,感謝您的幫助! – user2913135

2

使用==進行比較。不=,那是分配。

您可能還需要檢查你的()