我正在研究一個hang子手程序(這是一個家庭作業),這是它告訴玩家他們迄今爲止猜到的部分。這裏是我的編程:Python應該返回str返回'None'
def getGuessedWord(secretWord, lettersGuessed):
theWord=''
for char in secretWord:
if char not in lettersGuessed:
char='_ '
theWord+=char
elif char in lettersGuessed:
theWord+=char
else:
return theWord
print (getGuessedWord('apple', ['e', 't', 'i', 'p', 'r']
當我問它打印出來theWord
我期待它發出下劃線和字母_ pp_ e
的組合,相反,它給了我None
。我無法弄清楚我的問題是我在第2行放置theWord
的位置,還是與第二行的位置相關,或者與其他地方完全不同。
你什麼時候期待'else'執行? 'char'有什麼值'char not in lettersGuessed'是假的_and_'char in lettersGuessed'是False? – Kevin
這是你的代碼嗎?它有空白錯誤。 – doctorlove
你的return語句放錯了位置,它應該在for循環之後。 –