0
不,這不是重複的。Python淺/深度複製錯誤
我有以下類別: -board 單放機
當球員被實例化,它創造了該玩家一個新的董事會對象。
我有一個切換當前和潛在的玩家功能:
from copy import deepcopy
switch_players(self):
temp_val = deepcopy(self.current_player)
# self.current_player = None
self.current_player = deepcopy(self.latent_player)
# self.latent_player = None
self.latent_player = deepcopy(temp_val)
temp_val = None
當我打電話self.current_player.name
也能正常工作的球員的名字,但是當我使用self.current_player.board.display
,或寫微博,它引用雙方球員的相同棋盤爲。
我甚至添加了代碼來創建板的deepcopy()
來切換像這樣,但我仍然遇到同樣的問題。這是做這種事情的根本錯誤的方式嗎?或者這種方法是否正確,我應該看看我的代碼中的其他地方? (我有另一種方式做這個,但我不理解爲什麼這種方法不起作用的理論)
您應該創建自己的複製功能。 – quantummind
剛剛找到線程 - 感謝您的幫助! –