Bluff is a pythonic poker framework
Project description
bluff
Bluff is a pythonic poker framework.
Currently, bluff covers the following poker variants:
- Texas Hold'em
- Chinese Poker
Getting Started
Installation
Use the package manager pip to install Bluff.
pip install bluff
Usage
Evaluating hands
import bluff
# Hands can be created by passing Card instances as arguments.
hand1 = bluff.Hand(
bluff.Card("5d"),
bluff.Card("4s"),
bluff.Card("5s"),
bluff.Card("4c"),
bluff.Card("5h"),
)
hand1.name
>>> "full_house"
Comparing hands values
import bluff
# Hands can also be created by passing their string representations.
hand1 = bluff.Hand("5d", "4s", "5s", "4c", "5h")
# Concatenated strings are also accepted.
hand2 = bluff.Hand("Jh", "Td", "Js", "5s", "8d")
hand1.value > hand2.value
>>> True
Drawing a card for a player
import bluff
player = bluff.Player(name="Chris Moneymaker", chips=10000)
deck = bluff.Deck()
card = deck.draw()
player.hand.add(card)
Evaluating equity with Monte Carlo
from bluff.holdem import equity
equity.equity(("QQ", "AKo"), times=10000)
Evaluating a hand equity against several ranges
from bluff.holdem import equity
# Ranges descriptions.
equity.eval_ranges("JTs", ("KQs ATo 99", "AKs QQ"), times=10000)
# Ranges percentages.
equity.eval_ranges("JTs", (10, 30), times=10000)
For more information see the documentation.
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.
Author
- Matheus Couto - Linkedin
License
This project is licensed under the MIT License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distribution
bluff-1.0.2-py3-none-any.whl
(1.1 MB
view hashes)