Ich versuche, eine Zeile zu meinem pandas.DataFrame
basierend auf den Klassenattributen dynamisch hinzuzufügen, aber es funktioniert aus irgendeinem Grund nicht. Hoffentlich ein Beispiel macht mehr Sinn:Hinzufügen von Zeile dynamisch basierend auf dem Klassenattribut zu einem DataFrame
import numpy as np
import pandas as pd
class match:
def __init__(self):
self.position = np.zeros(shape = (3, 3))
self.moves = []
def PlayMove(self, x_coordinate, y_coordinate, player_name):
if player_name == "player1":
self.position[x_coordinate, y_coordinate] = 1
if player_name == "player2":
self.position[x_coordinate, y_coordinate] = 4
self.moves.append(pd.DataFrame(self.position.reshape(1, 9)))
match1 = match()
match1.PlayMove(1,2,"player1")
print(match1.position)
print(match1.moves)
match1.PlayMove(2,2,"player1")
print(match1.position)
print(match1.moves)
Die gleiche Bewegung zweimal ausgibt, während ich den ersten Schritt und den zweiten Schritt in einer separaten Zeilen speichern möge. Jedes Mal, wenn ein Zug gespielt wird, möchte ich die neue Position nacheinander in match1.moves und der letzten Position in match1.position speichern.