Spaces:
No application file
No application file
# AUTOGENERATED! DO NOT EDIT! File to edit: ../nbs/deck.ipynb. | |
# %% auto 0 | |
__all__ = ['Deck'] | |
# %% ../nbs/deck.ipynb 3 | |
from .card import * | |
from fastcore.test import * | |
from fastcore.utils import * | |
# %% ../nbs/deck.ipynb 4 | |
class Deck: | |
def __init__(self): | |
self.cards = [Card(suit, rank) for suit in range(4) for rank in range(1, 14)] | |
def __str__(self): | |
return "|".join([str(card) for card in self.cards]) | |
def __len__(self): | |
return len(self.cards) | |
def __contains__(self, card): | |
return card in self.cards | |
__repr__ = __str__ | |
# %% ../nbs/deck.ipynb 10 | |
def pop(self: Deck, idx: int = -1): # index of card to remove, default to last card | |
"""Remove one card from the deck""" | |
return self.cards.pop(idx) | |