0

Python でハングマン ゲームを作成しようとしていますが、特定の関数の 1 つに問題があります。ユーザーが選択可能なすべての文字のセットを印刷したいと考えています。したがって、使用可能な = 'abcdefghijklmnopqrstuvwxyz' から始めます。私の secretWord が 'apple' で、ユーザーが最初の試行で 'a' を推測した場合、次のラウンドで使用可能な新しい使用可能な文字セット = 'bcdefghijklmnopqrstuvwxyz'. 以下に示すように何かをまとめてみましたが、機能しません。一部の文字が削除されますが、たとえば「z」と入力すると、使用可能な文字列に残ります。

if letter in lettersGuessed: 
                print('Oops! you\'ve already guessed that letter, try again: ')
elif letter in secretWord: #this is the part giving me trouble
                c = available.find(letter)
                available = available[0:c] + available[c+1:]

また、文字列のスライス以外に、これを簡単にする機能や方法があれば、それも教えていただければ幸いです。

4

1 に答える 1

0

を使用した簡単な方法がありreplaceます。

>>> available = 'abcdefghijklmnopqrstuvwxyz'
>>> secret = 'apple'
>>> if 'a' in secret:
...   available = available.replace('a','')
... 
>>> available
'bcdefghijklmnopqrstuvwxyz'
于 2013-03-30T02:58:07.623 に答える