In [1]:
class Player(object):
def __init__(self, bankroll = 100):
self.bankroll = bankroll
def add_bankroll(self, amount):
self.bankroll += amount
In [2]:
m_player1 = Player()
In [3]:
m_player1.add_bankroll(1000)
In [4]:
m_player1.bankroll
Out[4]:
In [5]:
# blackjack game
In [6]:
# used for card huffle
import random
# boolean used to know if hand is in play
playing = False
chip_pool = raw_input("chip_pool: ")
bet = 1
restart_phrase = "press 'd' to deal.\nPress 'q' to quit"
In [7]:
# Hearts, Diamonds, Clubs, Spades
suits = ('H', 'D', 'C', 'S')
# possible card ranks
ranking = ('A', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K')
# point values dict (Note: Aces can also be 11, check self.ace for details)
card_val = {'A':1,
'2':2,
'3':3,
'4':4,
'5':5,
'6':6,
'7':7,
'8':8,
'9':9,
'10':10,
'J':10,
'Q':10,
'K':10}
In [8]:
# Create a card class
class card:
def __init__(self, suit, rank):
self.suit = suit
self.rank = rank
def __str__(self):
return self.suit + self.rank
def grab_suit(self):
return self.suit
def grab_rank(self):
return self.rank
def draw(self):
print (self.suit + self.rank)
In [ ]:
class Hand:
def __init__(self):
self.cards = []
self.value = 0
# Aces can be 1 or 11, so need to define it here
self.ace = False
def __str__(self):
'''Return a string of current hand composition'''
hand_comp = ""
# Better way to do this? List comprehensions?
for card in self.cards:
card_name = card.__str__()
hand_comp += " " + card_name
return 'The hand has %s' % hand_comp
def card_add(self, card):
'''Add another card to the hand'''
self.cards.append(card)
# Check for Aces
if card.rank == 'A':
self.ace = True
self.value += card_val[card.rank]