ChineseChess (AKA XiangQi) library
Project description
cchess
cchess是一个Python版的中国象棋库,主要功能如下:
##棋盘显示
board_strs = board.text_view()
print()
for s in board_strs:
print(s)
#or
board.print_board()
##走子(内部格式), 中文显示
move = board.copy().move((0,0),(0,1))
print(move.to_text())
##走子(ICCS纵线格式),中文显示
move = board.copy().move_iccs('a0a1')
print(move.to_text())
##走子(中文格式,尚待完善),中文显示
move = board.copy().move_text('车九进一')
print(move.to_text())
##产生某个棋子的合法走子
moves = board.create_piece_moves((0,0))
for mv in moves:
move = board.copy().move(*mv)
print(move.to_text())
##产生所有合法走子
moves = board.create_moves()
for mv in moves:
move = board.copy().move(*mv)
print(move.to_text())
##将军检测
board.from_fen('3k5/9/9/9/9/3R5/9/9/9/4K4 w - - 0 1')
print(board.is_checking()) #True
##将死对方检测
print(board.is_checkmate()) #True
##走子被将军检测
board.from_fen('3k5/9/9/9/9/3R5/9/9/9/4K4 b - - 0 1')
mv = move.from_iccs('d9e9')
print(board.is_checked_move(*mv)) #True
##被对方将死检测
print(board.no_moves()) #True
##读取xqf文件, 显示棋谱
game = Game.read_from("WildHouse.xqf")
game.init_board.print_board()
board_strs = game.init_board.text_view()
print()
for s in board_strs:
print(s)
game.print_text_moves()
##读取cbr文件, 显示棋谱
game = Game.read_from("WildHouse.cbr")
game.init_board.print_board()
board_strs = game.init_board.text_view()
print()
for s in board_strs:
print(s)
game.print_text_moves()
##读取cbl文件, 显示所有棋谱
lib = Game.read_from_lib("WildHouse.cbl")
for game in lib['games']:
game.init_board.print_board()
board_strs = game.init_board.text_view()
print()
for s in board_strs:
print(s)
game.print_text_moves()
##加载引擎进行对弈 支持 UCCI引擎(eyeele “象眼”引擎)和UCI引擎(pikafish “皮卡鱼”引擎) 参见demo/end_game_master.py
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cchess-1.25.5.tar.gz.
File metadata
- Download URL: cchess-1.25.5.tar.gz
- Upload date:
- Size: 79.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
de4a0de300c0d9da05f25a5096cdc213d682e1b6843d043c03413cc508a7348a
|
|
| MD5 |
18a5b8ed5b7e01c89b87414f16793aca
|
|
| BLAKE2b-256 |
9be262ea3f0e5e6affb010dff4d7c7c9bf5380ba16d5a275e3aa166eef083ac6
|
File details
Details for the file cchess-1.25.5-py3-none-any.whl.
File metadata
- Download URL: cchess-1.25.5-py3-none-any.whl
- Upload date:
- Size: 88.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fa48602cf76d7776f8e4f0568b5f9b8b32a32c5d3a9089c05855d1f49a303171
|
|
| MD5 |
b80c77689e2217ba607a24ba7b4872f0
|
|
| BLAKE2b-256 |
778df88e22fe5a6bf44f6b8d88a01f19966d72afffa063dd6f7c412c06ea99fc
|