Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import random
- def shuffled_deck():
- deck = []
- for suit in ['Clubs', 'Diamonds', 'Hearts', 'Spades']:
- for num in xrange(2, 15):
- deck.append([num, suit])
- random.shuffle(deck)
- return deck
- def card_name(card):
- if card == 11:
- return 'Jack'
- elif card == 12:
- return 'Queen'
- elif card == 13:
- return 'King'
- elif card == 14:
- return 'Ace'
- else:
- return str(card)
- def deal_cards(deck):
- return deck[::2], deck[1::2]
- def check_cards(player1, player2):
- if player1 > player2:
- return 'player1'
- elif player1 < player2:
- return 'player2'
- else:
- return 'tied'
- def replenish(wonpile):
- random.shuffle(wonpile)
- return wonpile
- deck = shuffled_deck()
- hand1, hand2 = deal_cards(deck)
- ontable = []
- round = 0
- hand1won = []
- hand2won = []
- while len(hand1) > 0 and len(hand2) > 0:
- round += 1
- print "Round %d" % round
- card1 = hand1.pop(0)
- card2 = hand2.pop(0)
- ontable.extend([card1, card2])
- print "Player One plays the %s of %s." % (card_name(card1[0]), card1[1])
- print "Player Two plays the %s of %s." % (card_name(card2[0]), card2[1])
- play_winner = check_cards(card1[0], card2[0])
- if play_winner == 'player1':
- print "Player One wins the round."
- hand1won.extend(ontable)
- ontable = []
- elif play_winner == 'player2':
- print "Player Two wins the round."
- hand2won.extend(ontable)
- ontable = []
- elif play_winner == 'tied':
- print "The players tie for this round and the cards remain on the table."
- print "The score is now Player One: %s, Player Two: %s" % (len(hand1won)+len(hand1), len(hand2won)+len(hand2))
- if len(hand1) == 0 and len(hand1won) > 0:
- print "Player One replenishes."
- hand1 = replenish(hand1won)
- hand1won = []
- if len(hand2) == 0 and len(hand2won) > 0:
- print "Player Two replenishes."
- hand2 = replenish(hand2won)
- hand2won = []
- if len(hand1) > len(hand2):
- print "Player One wins the game!"
- elif len(hand1) < len(hand2):
- print "Player Two wins the game!"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement