问题标签 [python-chess]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1354 浏览

python - Python:使用 python-chess 库中的 stockfish 评估棋盘位置

我正在尝试创建一个引擎,但我的评估功能很糟糕,所以我决定使用 stockfish 来为我评估它。

但它打印出来:

0 投票
0 回答
103 浏览

python - Python:Stockfish 正在打开太多进程

我得到了:OSError: [Errno 24] Too many open filesstockfish 正在创建太多的进程。我该如何解决?

这是我的代码中导致错误的部分:

很多

0 投票
1 回答
527 浏览

python - 棋盘棋子不显示

代码:

变量值:

files

['black-bishop.png', 'black-bishop2.png', 'black-king.png', 'black-knight.png', 'black-knight2.png', 'black-pawn.png', 'black-queen.png', 'black-rook.png', 'black-rook2.png', 'black-pawn.png', 'black-pawn.png', 'black-pawn.png', 'black-pawn.png', 'black-pawn.png', 'black-pawn.png', 'black-pawn.png', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 'white-pawn.png', 'white-pawn.png', 'white-pawn.png', 'white-pawn.png', 'white-pawn.png', 'white-pawn.png', 'white-pawn.png', 'white-bishop.png', 'white-bishop2.png', 'white-king.png', 'white-knight.png', 'white-knight2.png', 'white-pawn.png', 'white-queen.png', 'white-rook.png', 'white-rook2.png']

我知道这不是正确的顺序,但我现在只想让它显示在板上。

输出:

我得到的棋盘输出

问题:

我期待在顶部 2行和底部 2 行的每个方格上获得碎片。

  1. 为什么不是这样?
  2. 还有,为什么车被黑盒子包围?我的图像没有那个框。

编辑:

使用@Boendal 答案,我得到以下信息:

有几块缺失的新板

为什么有些方块的中心有黑色方块(尤其是棋子所在的地方)?

编辑#2:

暗方块是由于图像不透明。

通过使用此处找到的信息将它们转换为透明来修复

0 投票
1 回答
484 浏览

python - Python-国际象棋导入失败

我正在尝试在 Ubuntu 16 上安装 python-chess。通过 pip3 安装它,但在导入国际象棋时出错。

任何帮助都将不胜感激

提前致谢..

0 投票
0 回答
95 浏览

python-3.x - 预测(棋子分类)

我正在尝试通过机器学习识别棋盘上存在的所有棋子。目前我正在预测单个棋子。我想从磁盘加载训练有素的模型,循环通过棋盘,得到正在玩的方形作物和模型将预测该广场上的棋子。我想这样做- https://www.youtube.com/watch?v=jcFvrCsoY_w

这是我当前用于预测单件的代码。帮助我循环播放板并像上面的视频一样播放方形裁剪。

谢谢 !!!

0 投票
2 回答
5453 浏览

python - 从库 python-chess 在线命令中可视化完整的棋盘

我正在开发基于此库的国际象棋游戏: https ://pypi.org/project/python-chess/或https://github.com/niklasf/python-chess

在 Jupyter Notebook 上,如果我运行此代码:

它将显示一个漂亮的棋盘(即颜色、形状、看起来像棋盘)。如果我这样跑:

它将以更基本的方式用字母显示板。

问题是,使用“board”命令查看漂亮板的唯一方法是使用 Jupyter Notebook。如果我尝试在 Visual Studio 或行命令上运行命令“板”,则不会发生任何事情。似乎 line 命令不支持使用“板”(来自他们的网站:支持 Python 3.6+ 和 PyPy3.IPython/Jupyter Notebook 集成)。

有没有解决的办法?换句话说,我还能在命令行上运行“棋盘”并可视化漂亮的棋盘吗?

0 投票
2 回答
2075 浏览

python - 将python中程序的输出保存为图像

我需要保存棋盘的图像,就像这段代码创建的那样:

输出是起始棋盘:

棋盘

如何保存并打印此图像(例如在函数内部)?python中这些东西有一个独特的包吗?如果我尝试打印棋盘(打字print (board)),我会得到一个显示棋盘的字符串,而不是同一张照片。

0 投票
1 回答
674 浏览

python - PythonChess - 获取引擎来预测一个位置的最佳移动列表

我目前有一个棋盘,然后我将我的 e2 棋子移动到 e4。我正在寻找一种方法来让引擎预测黑色最佳移动的 X 数量。

我知道如何预测给定位置的最佳移动:

但这只能预测排名第一的最佳举动。我想要一个包含第二个、第三个... X 最佳动作的列表。

我该怎么做?

0 投票
1 回答
298 浏览

python - 尽管存在参考,Tkinter 按钮不显示图像

在我使用 Python 中的 tkinter 创建的基于 GUI 的国际象棋游戏中,我使用图像在网格按钮上显示棋子。图像 .png 文件位于与程序相同目录的文件夹中。当我运行代码时,图像不会显示在按钮上。我发现这个问题说我需要保留变量的引用。我的代码保留了一个参考,尽管图像没有显示。(请记住,现在图像只会显示黑色棋子)

这是创建按钮的代码(Python 3.7):

这是存储 PhotoImage 对象的代码:

有关整个代码,请访问: https ://pastebin.com/JXxBsLCz

0 投票
1 回答
7116 浏览

python - 如何在 Python 中显示 SVG 图像

我正在关注如何用 Python 编写国际象棋程序的本教程。

它使用python-chess引擎。该引擎的函数显然返回 SVG 数据,可用于显示棋盘。

  • 教程中的代码:

但是当我运行该代码时,我看到的只是终端中的一行,没有图像。

<IPython.core.display.SVG object>

本教程简要介绍了Jupyter Notebooks 以及如何使用它们来显示 SVG 图像。我没有使用 Jupyter Notebooks 的经验,即使我从 pip 安装了该软件包,并且对如何使用它进行了一些尝试,但对于我最初的棋盘问题,我并没有取得太大进展。但我所拥有的是使用 C++ 进行 Qt 开发的经验,并且由于 Qt 具有 Python 绑定,我决定使用这些绑定。

这是我写的:

一个 Qt 窗口打开并且什么都不显示,在终端中我看到很多文本 - (显然 SVG 数据最终出现在控制台中,而不是在打开的 Qt 窗口中?)。

我想我必须在 python 下安装一些 SVG 库,所以我从 pip安装了drawSvg 。但似乎该库会生成 SVG 图像。而且对我没用。

更奇怪的是,在看到这个 SO question之后,我尝试了以下方法:

它显示了一个图像 - 一个 SVG 图像!那我的案子和这个案子有什么区别呢?

问题:所以我的问题是,在棋盘 SVG 数据的情况下我做错了什么?python-chess库生成的SVG数据是不是和QtSvg不兼容?