Ich habe ein Problem, bei dem eine innere Schleife Variablen im äußersten umschreibt, insbesondere bei der Arbeit mit einer Liste, die ein Tic-Tac-TOE-Board darstellt. Ich möchte "x" jeweils "x" in jede leere Position platzieren, ohne die bereits modifizierte Karte zu ändern. Es scheint jedoch, dass die innere Schleife die äußere Schleifenvariable und Variablen, die etwas damit habendef occurrences(s, lst):
return (i for i, e in enumerate(lst) if e == s)
positions = [[" ", " ", " ", " ", " ", " ", " ", " ", " "]]
for board in positions:
for i in range(board.count(" ")):
occ = list(occurrences(" ", board))[0]
board[occ] = "X"
print(board[0:3])
print(board[3:6])
print(board[6:])
print("---------------------")
< /code>
Erwartete Ausgabe: < /p>
['X', ' ', ' ']
[' ', ' ', ' ']
[' ', ' ', ' ']
---------------------
[' ', 'X', ' ']
[' ', ' ', ' ']
[' ', ' ', ' ']
---------------------
[' ', ' ', 'X']
[' ', ' ', ' ']
[' ', ' ', ' ']
---------------------
...
< /code>
Tatsächliche Ausgabe: < /p>
['X', ' ', ' ']
[' ', ' ', ' ']
[' ', ' ', ' ']
---------------------
['X', 'X', ' ']
[' ', ' ', ' ']
[' ', ' ', ' ']
---------------------
['X', 'X', 'X']
[' ', ' ', ' ']
[' ', ' ', ' ']
---------------------
...
< /code>
Frage:
Ich habe erwartet, dass die Ausgabe "x" in jeder leeren Position eins nach dem anderen angezeigt wird, ohne vorherige Placements zu ändern. Es scheint jedoch, dass jede Iteration der inneren Schleife die Board -Variable aus der äußeren Schleife beeinflusst.>
Problem mit der inneren Schleife, die äußere Schleifenvariablen in Python modifiziert ⇐ Python
-
- Similar Topics
- Replies
- Views
- Last post