A test project using nbdev
Project description
nbdev_cards
A deck of cards demo of nbdev based on ideas from “Think Python 2nd Edition” by Allen B. Downey.
pip install
The nbdev-cards2022 package was uploaded to PyPI and can be easily installed using the below command.
pip install nbdev-cards2022
conda install
The nbdev-cards2022 was also uploaded to Anaconda and can be installed using the below command.
conda install -c hdocmsu nbdev-cards2022
How to use
import the card and deck modules
from nbdev_cards.card import *
from nbdev_cards.deck import *
This lib provids a
Card
class
that you can use to create, display, and compare playing cards.
Card(2,3)
3♥
display all suits
suits
['♣', '♦', '♥', '♠']
display all ranks
ranks
[None, 'A', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K']
Deck
class can
be called to generate a deck of playing card. Initially, the deck is
ordered.
deck = Deck()
deck
A♣; 2♣; 3♣; 4♣; 5♣; 6♣; 7♣; 8♣; 9♣; 10♣; J♣; Q♣; K♣; A♦; 2♦; 3♦; 4♦; 5♦; 6♦; 7♦; 8♦; 9♦; 10♦; J♦; Q♦; K♦; A♥; 2♥; 3♥; 4♥; 5♥; 6♥; 7♥; 8♥; 9♥; 10♥; J♥; Q♥; K♥; A♠; 2♠; 3♠; 4♠; 5♠; 6♠; 7♠; 8♠; 9♠; 10♠; J♠; Q♠; K♠
shuffle()
method could be used to shuffle the deck.
deck.shuffle()
deck
6♠; A♦; 8♣; 3♠; A♣; 7♠; K♥; 9♠; 6♣; A♠; 4♥; 5♦; K♠; 3♣; 3♦; 6♦; 2♦; Q♥; 5♠; 9♦; 2♠; K♣; 7♣; 9♣; 5♣; 10♦; A♥; 8♥; 10♥; 3♥; 4♠; 10♠; J♦; 4♦; 8♠; Q♠; J♠; Q♦; 9♥; 2♣; J♣; 7♥; K♦; 5♥; Q♣; 7♦; J♥; 10♣; 4♣; 2♥; 6♥; 8♦
draw_n()
function can be used to draw n card with or without
replacement.
let’s draw 10 cards with replacement.
draw_n(10, replace=True)
[4♣, 10♥, 4♣, 9♠, K♦, 3♥, 8♠, Q♦, Q♣, 3♠]
now let’s draw 10 cards without replacement.
draw_n(10, replace=False)
[K♦, 4♦, 3♠, Q♦, 7♥, A♦, 4♥, 10♥, 6♠, J♦]
Example: One can draw two sets of cards each set contains four cards and compare to see which one has higher rank.
Developer install
If you want to develop nbdev_cards yourself, please use an editable installation of nbdev_cards.
git clone https://github.com/hdocmsu/nbdev_cards.git
pip install -e "nbdev_cards[dev]"
You also need to use an editable installation of nbdev, fastcore, and excnb.
Happy Coding!!!
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 Distribution
Built Distribution
Hashes for nbdev_cards2022-0.1.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 11e8b1cac0f2806aaba5777778c3b89f5c909399cf6d9f19da2b6311c1dea370 |
|
MD5 | 0f8494d18c33e98e54a75370f823f269 |
|
BLAKE2b-256 | 733395e8a4934df83b120407579345fda5a83df98275d68aa7f04d3ac3eb456e |