私は初心者です。 私はこのforループに問題があります。forループでのPythonの変な動作
私は、プレイヤー(人間)が行った動きを追跡し、次の動きをチック・タック・トー・ゲームで予測するために、pcの検索ループを試みています。
その結果、私はプレイヤー(人間)によって行われた動きを追加するforループを作成しますが、奇妙な何かが
lst = [ [ "X",[], [] ],
[ [], "X", [] ],
[ [], "X", [] ] ]
temp_lst = []
for i in lst:
lst_1 = []
for j in i:
if j == "X":
lst_1.append(lst.index(i))
print(lst.index(i))
lst_1.append(i.index(j))
print(i.index(j))
temp_lst.append(lst_1)
print (temp_lst)
私のIDLEの結果は起こる:
0
0
1
1
1
1
[[0, 0], [1, 1], [1, 1]]
注意"X" in the MIDDLEと "X" intの最後のリストの位置は同じではないことになります。これは私の問題です。
lst = [ [ "X",[], [] ],
[ [], "X", [] ],
[ [], [], "X" ] ]
result: [[0, 0], [1, 1], [2, 2]]
のpythonからの結果は、最後の「X」の正しい位置を示していますが、以前の一つに、それが最後の「X」
のための強固な地位を与えた:私はにLSTを変更する場合があります助けてくださいありがとうございます
あなたの予想される出力は次のようになります。私は、そのコードの結果が
ような何かをするだろう[1,2]? –
コードのインデントが間違っています。これはPythonでは重要で、コードの出力内容を変更します。それを修正する必要があります。 – zezollo