分配一个变量以保持它为国际象棋游戏记忆

时间:2017-04-13 10:44:49

标签: python chess

.. parsed-literal::

  {
    "id": <number>,
    "name": <string>,
    "big_property": <see schema of big_object_>
  }

在第一个“印刷品(SauvegardePlateau)”它给了我应该做的“高原”,但在第二个印刷品上,它给了我一个在我只改变“高原”并且没有改变时已经改变的那个SauvegardePlateau“

目的是能够取消一个动作,所以我需要在我的主要高原变化之前将高原保存在一个变量(SauvegardePlateau)中但有线地它们都改变了,这意味着我的“如果SauvegardePlateau!=高原”从未起作用

我不明白为什么会这样做,如果你能帮助我的话?谢谢 ! (对不起英语错误,我是法国人)

2 个答案:

答案 0 :(得分:0)

我无法修改您的问题以解决问题,因此我为什么要回答这个问题。
首先,进行一些翻译,以便其他人更容易阅读代码:

  • &#34;高原&#34; =&#34; Board&#34;
  • &#34; SauvegardePlateau&#34; =&#34;保存董事会&#34; (虽然&#34;备份板&#34;更合适)
  • &#34; deplacement&#34; =&#34;移动&#34;
  • &#34; dessinpieces&#34; =&#34;画(国际象棋)作品&#34;

现在已经不在了,让我们解决您的实际问题:

首先, 应该遵守PEP 8中定义的正确的样式指南。这将大大提高代码的可读性。

在技术部分,您要做的是:

  • 备份电路板
  • 通过移动一块来改变棋盘的状态
  • 检查您之前制作的备份

在python中,如果你执行以下操作:

>>> board = ["Begin"]
>>> backup = board
>>> board.append("Change!")
>>> backup
['Begin', 'Change!'] 

您可以清楚地突出显示该问题。 backup board的副本,而是链接
要获得适当的副本&#34;您的列表,并从您提供的代码示例来看,它看起来像:

sauvegarde_plateau = list(plateau)

符合您的需求。 有关详细信息,请参阅this answer

答案 1 :(得分:0)

谢谢!帮助了我很多,谢谢你花时间解释我这一点,对不起我应该翻译它! (虽然它适用于我的BAC(相当于A级),所以我需要用法语这一切)。 无论如何,谢谢你的详细答案。