A wrapper for chess engines supporting the UCI protocol
Project description
chessEngines
This project is a wrapper for chess engines supporting the UCI protocol. It allows you to create a connection to a compiled chess engine and communicate with it. By default, the following engines are distributed with this project:
- Stockfish
- Leela Chess Zero
These distributions can be found under /Engines. The distributions are original and no changes have been made.
Usage
In the following we will connect to the default distribution of Stockfish and find the best move in a set position:
from chess_engines import engines
# called each time stockfish finds a potential 'best move'
def on_move_found(move):
print(move)
# load Stockfish
sf = engines.Stockfish()
# set starting position
sf.play_moves_san('1. e4 e5 2. Nf3 Nc6 3. Bc4')
# find the best move within 2 seconds
best_move = sf.best_move_san(max_secs=2, callback=on_move_found)
print(f'Best move: {best_move}')
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
chessEngines-1.0.9.tar.gz
(26.2 kB
view hashes)
Built Distribution
Close
Hashes for chessEngines-1.0.9-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fe3d23dd04327a0d4744425fa0e768621b7880ebcfe105c9769e2073b0a3fdd3 |
|
MD5 | 303c9dc40d39b1c43e5b27731151ea0b |
|
BLAKE2b-256 | b15af08e0ab534bc5d5fbb1f94449a61bf4de5e550570547fb0f60374cfe1769 |