diff --git a/src/statebag/boardstate.py b/src/statebag/boardstate.py --- a/src/statebag/boardstate.py +++ b/src/statebag/boardstate.py @@ -63,15 +63,16 @@ class BoardState: def __getitem__(self,key): return self._board[key] - def __sub__(self,x): + ## Compute difference self-s. + def __sub__(self,s): res=[] - for (r,(row1,row2)) in enumerate(zip(self._board,x)): - for (c,(item1,item2)) in enumerate(zip(row1,row2)): - if item1==item2: continue - elif item2==EMPTY: res.append((r,c,"+",item1)) - elif item1==EMPTY: res.append((r,c,"-",item2)) - else: res.append((r,c,"*",item1)) # ->to + for (r,(row,rowS)) in enumerate(zip(self._board,s)): + for (c,(item,itemS)) in enumerate(zip(row,rowS)): + if item==itemS: continue + elif itemS==EMPTY: res.append((r,c,"+",item)) + elif item==EMPTY: res.append((r,c,"-",itemS)) + else: res.append((r,c,"*",item)) # ->to return res def __eq__(self,x):