我對編程非常陌生,並且正在創建一個函數,它接收一個或多個字母並檢查它是否在單詞中。我需要控制猜測的數量,所以我想設置一個布爾值來測試它是否正確。清楚的是,我已經瀏覽了這類問題的其他答案,但無法弄清楚這種情況下發生了什麼。無法在Python中創建布爾全局
即使if語句爲true,我也無法使bool'correct'返回True。看了這個後,似乎把它作爲一個全局變量應該解決這個問題,但它不適合我。它仍然返回False。 我該如何解決這個問題?我正在使用Python 2.5。
任何幫助將不勝感激! 謝謝!
randomWord = choose_word(wordlist)
guessedLetters = []
correct = False
def userGuesses(letters):
newLetters = list(letters)
global correct #change correct to global
for i in range(len(letters)):
curLetter = letters[i]
for j in range(len(randomWord)):
if curLetter == randomWord[j]:
guessedLetters[j] = randomWord[j]
correct = True
else:
correct = False
return guessedLetters
當你說它返回false時,我在質疑你是否向我們展示了你的所有代碼,或者你是在說它正在返回'False'。因爲什麼是'randomWord',它在你使用它時沒有被定義。 – MooingRawr
首先,你有兩個「回報」的陳述。第二個永遠不會工作。 –
停止使用全局變量 – Marcin