一个5,6,7张牌的纯python扑克手算器
pokereval的Python项目详细描述
在纯python中
2011年1月27日,Alvin Liang
简介
这是一个纯python库,用于计算最佳扑克的等级 分发5张、6张或7张卡片。它不为你管理董事会,或者 计算中奖率,EV,或诸如此类的。但是如果你给 两只手和同一块板,你就能知道哪只手 赢了。
它远没有Pypooker Eval快,但如果你不能 出于某种原因使用c(麻省理工学院第一个扑克机器人的早期阶段 我想到了竞争)。核心算法比较慢, 显然没有C的速度。
快速启动
frompokereval.cardimportCardfrompokereval.hand_evaluatorimportHandEvaluatorhole=[Card(2,1),Card(2,2)]board=[]score=HandEvaluator.evaluate_hand(hole,board)
等级是2-14代表2-A,而西服是1-4代表 黑桃,红心,钻石,梅花。
card构造函数接受两个参数rank和suit。
aceOfSpades=Card(14,1)twoOfDiamonds=Card(2,3)
算法
5张卡的算法只是过去算法的一个端口 位于以下URL。(我故意中断了链接,因为它现在主持 一个恶意软件站点。) httx://wwx.suffecool.net/poker/evaluator.html
我自己想出了6和7个卡片评估器,使用了一个非常相似的 卡片表示法与素数的一些相同思想 数字。其目的是在查找表大小和 速度。
另外,我还没有包含用于生成查找表的代码, 但是你应该可以用一个更简单,更慢的算法。 也许我以后也会加上。
还有一个两卡排名/百分位数算法是不相关的 其他的,以后可能会被清理干净。我们曾经用它 一些失败前的评估。Zach Wissner Gross的发展功劳 这个。
目前文档很少,很抱歉,显然我 没有真正的麻烦去包装或清理它。我可以或者不可以 以后再做这个。基本上,我做到了,为什么不发布呢?
贡献者
- 我!走吧!
- Zach Wissner Gross(双卡算法)
- arslr(其他python版本的修复)
- Jim Kelly(包装帮助,附加文档)