我正在用python寫東西,我不明白爲什麼這段代碼不起作用。將字符串設置爲由用戶輸入的字母
m = 1
f = 0
gender_choice = False
while gender_choice == False:
gender = input('Are you male or female? Type m for male or f for female. ')
if gender == m or gender == f:
print
gender_choice = True
else:
print
print "Hey, this is a text based game. Read and follow bro."
print gender
我想我明白,有與設置字符串爲「M」或「F」,但除非我改變的raw_input輸入,循環將繼續的問題。而且,正如目前所寫,如果用戶輸入除數字,m或f之外的任何內容,我將會得到一個錯誤信息,表示字符串未定義,例如,如果輸入「y」。
您正在比較字符串和數字 –
正如您目前所寫,您有'IndentationError',因爲''if'語句後面的行沒有縮進。 – roippi
'm'是一個變量(在你的代碼中,它等於'1'),''m''是一個你要求用戶輸入的字符串,你正在分配名字'gender'。如果用戶輸入'm'作爲他們的答案,你的if語句就是'if'm'== 1',這當然永遠不會是真的 –