ボード ゲーム MasterMind に似たゲームの練習用コードを作成していますが、このエラーが何度も発生し、なぜそれが行われているのかわかりません。コードは次のとおりです。
def Guess_Almost (Guess, Answer):
a = ''.join([str(v) for v in Answer])
g = str(Guess)
n = 0
am = 0
while n < 5:
if g[n] == a[0]:
am = am + 1
if g[n] == a[2]:
am = am + 1
if g[n] == a[3]:
am = am + 1
if g[n] == a[3]:
am = am + 1
n = n + 1
return(am)
さて、Guess は 4 つの整数に指定されており、Answer は 4 つの数値を含むリストです。どちらもコードの後に同じ「len」があるため、手がかりがありません。
このコードのポイントは、Answer を 4 つの数字の文字列に変換し、これらの数字のいずれかが推測と一致するかどうかを確認し、一致する合計数を返すことです。