2012-10-26 35 views
0

我正在編寫一個hangman代碼,並且無法爲無效的字母猜測設置錯誤(例如,猜測應該在az,no numbers或multiple之間字母串)。這可能是一個相當簡單的解決方案,但我在正式確定代碼時遇到了麻煩。這裏是我如何實現的代碼:如何在Hangman(Python)中初始化字母猜測提示錯誤

while ((count < 6) and win): 
    guess = input("Please enter the letter you guess: ") 
    if guess: 
     try: 
     guess = guess.lower() 
     lettersCorrect += 1 
     if (guess not in letterList): #SYNTAX ERROR 
     print ("You need to input a single alphabetic character!") 
     continue 

我注意到我得到的語法錯誤。 letterList是我創建的包含所有可接受字母(a-z)的列表。我的編碼是關閉的,還是有一種更簡單的方式來說,「如果不在letterList中」。

謝謝。

+1

你擁有它是正確的,你忘記了和'except'塊。但包括一個嘗試是多餘的。 – squiguy

回答

0

您的try塊沒有意義。此外,而不是letterList,您可以使用string.lowercase

import string 

while count < 6 and win: 
    guess = input("Please enter the letter you guess: ") 
    if guess: 
     guess = guess.lower() 
     if guess not in string.lowercase: 
     print("You need to input a single alphabetic character!") 
     continue 
     lettersCorrect += 1 
+1

或者可能只是使用'如果guess.isalpha()'。 –