現在、絶対初心者向けのPython(第3版)という本からPythonを学んでいます。この本には、ハンベマンゲームのコードを説明する練習があります。私はこのコードと一緒に続いたが、私はプログラムの途中でエラーを取り戻し続けた。ここでPythonエラー:「IndexError:文字列インデックスが範囲外です」
は、問題を引き起こしているコードです:
if guess in word:
print("\nYes!", guess, "is in the word!")
# Create a new variable (so_far) to contain the guess
new = ""
i = 0
for i in range(len(word)):
if guess == word[i]:
new += guess
else:
new += so_far[i]
so_far = new
これはまた、それが返すエラーです:
new += so_far[i]
IndexError: string index out of range
誰かが間違っているもので私を助けることができると私はすることができますそれを修正するには?
編集:私はそうのようなso_far変数を初期化:
so_far = "-" * len(word)
これはあなたの質問とは無関係ですが、i = 0は必要ありません。forループは、まだ定義されていなくても起動時に自動的にループ変数を設定します。 –
@Chadそう、あなたの権利。私はなぜそれにこだわったのか覚えていない:S – Darkphenom