6

どこかで利用可能な無料の python チェスの動きの検証機能があるかどうかは誰にもわかりませんか?

私が必要なもの。文字列として格納されたダイアグラムがあり、候補を移動します。必要なのは、移動候補がダイアグラムに対して有効かどうかを確認することです。

可能であれば、例を見て本当に興味があります。


文字列は次のようになります。

ememememememememememememememememembbememwpemememememwpemembkemememememememememememememwbembrememememwkememememem

ばかげているように思えるかもしれませんが、この方法で位置をエンコードするのが最も簡単だと思います。私にとっての移動候補は、そのような位置の 1 つにすぎません (次の移動の後に発生し、この動作を変更できると思います)

4

6 に答える 6

5

誰の順番で移動するか、各キングが移動したかどうか (キャスティングが許可されていないことを意味します)、各ポーンの「アンパッサン」ステータスなどの情報がありません。それはさておき、ここで説明されている 10x12 要素配列のようなそれほど複雑ではないボード表現を使用して、独自のものを作成することは非常に有益な演習になります(120 要素配列に線形化することを除いて)。

于 2010-05-18T21:30:09.250 に答える
3

PyChessPython Chessなどの Python チェス プログラムのいずれかのソースを使用するだけです。

具体的には、pychess の有効な動き: https://code.google.com/p/pychess/source/browse/lib/pychess/Utils/lutils/validator.py

于 2010-05-18T19:56:41.667 に答える
1

横にある関連する回答のいくつかを見て損はありません:チェスの動きの検証ライブラリhttps://stackoverflow.com/questions/1239913/smallest-chess-playing-programが目立ちます。

個人的には、自分でビルドすることに賛成です。

于 2010-05-18T20:13:03.483 に答える
0

ChessBoardをチェックしてください。

残念ながら、いくつかの欠点があります。

  • コメントで1年以上前に報告されたバグが修正されていないようなので、放棄されたようです
  • コードは実際には PEP-8 に準拠していません
  • 一部のメソッドは非常に醜くて大きく、すべてのメソッドに docstring があるわけではありません
  • 単体テストがないため、そのコードを掘り下げるのは難しいかもしれません (すでに少なくとも 2 回試して失敗しました)。

良いことは、コードが GPL であるため、そのライセンスに固執する限り、それを使用できることです。

于 2010-07-26T18:51:16.630 に答える