a collection of gambling classes/tools
Project description
gamble is a simple library that implements a collection of some common gambling-related classes
Features
- die, dice, d-notation
- cards, decks, hands
- poker ranks, hand comparison
Usage
Installation
pip install gamble
Basic Usage
Dice
import gamble # create dice, defaults to 2 6-sided dice dice = gamble.Dice() # roll dice.roll() >>> 6 dice.rolls >>> 1 # max, min dice.max >>> 12 dice.min >>> 2 # d-notation for dice constructor dice = gamble.Dice('d20+8') # max, min dice.max >>> 28 dice.min >>> 9 # parts dice.parts >>> [<d20 Die>, 8] # roll_many dice.roll_many(2) >>> [8, 4] # max_of, min_of dice.max_of(3) >>> (11, [7, 3, 11]) dice.min_of(3) >>> (2, [2, 9, 4])
Cards
import gamble # create a deck, defaults to the standard 52 card deck, no jokers # the deck will be shuffled by default, unless you pass shuffle=False deck = gamble.Deck() deck.cards_left >>> 52 deck.top >>> <Card:7♠> deck.bottom >>> <Card:9♠> deck.shuffle() # you can also pass times=(int) to shuffle more than once card = deck.draw() # you can also pass times=(int) to draw a list of cards >>> <Card:A♠> # the unicode cards icons are implemented as well! card.unicode >>> "🂡" # draw a poker hand, default size 5 hand = deck.draw_hand(). # you can pass size=(int) to draw a different size hand >>> <Hand[5](straight flush) [A♠, 2♠, 3♠, 4♠, 5♠]> hand.rank >>> Rank(name='straight flush', value=8) # arbitrary hand, from text notation new_hand = gamble.Hand.get("2c,3c,4c,Kc,Kh") >>> <Hand[5](pair) [2♣, 3♣, 4♣, K♣, K♥]> new_hand.rank >>> Rank(name='pair', value=1) hand > new_hand >>> True
Todo
- hand equals/ge/le method
- hand ranking when hands are very similar
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size gamble-0.8-py3-none-any.whl (13.7 kB) | File type Wheel | Python version py3 | Upload date | Hashes View |
Filename, size gamble-0.8.tar.gz (12.4 kB) | File type Source | Python version None | Upload date | Hashes View |