# How Can We Do My Python Assignment for You? My very first assignment at University was to program a game of 21, although it was a cut down version. The assignment was in Pascal, so I have converted the code into Python to demonstrate a simple assignment. The basic rules of BlackJack (21, Pontoon) are that you have a deck of cards, and face cards count as 10 (Jack, Queen, King), and the Ace can count as 1 or 11. You see your cards, but not the dealers (you see one of the dealers cards) and you decide whether to stop where you are or to draw a new card. Once you have finished, the dealer takes their turn, and will draw if the value of the hand is less than 17. I’ve not included comments in the code, but I would do if it was a real assignment.

# Blackjack (21 or Pontoon)

import random

class Card:

deck = []

def __init__(self, rank, suit):
if rank == “1”:
rank = “10”
self.rank = rank
self.suit = suit
if rank in “JQK”:
self.val = 10
elif rank == “A”:
self.val = 11
else:
self.val = int(rank)

def __str__(self):
return “%s%s” % (self.rank, self.suit)

def __repr__(self):
return str(self)

class Deck:

def __init__(self):
self.__deck = [Card(rank, suit) for suit in “CDHS” for rank in “234567891JQKA”]
self.shuffle()

def draw(self):
card = self.__deck[self.__index]
self.__index += 1
return card

def shuffle(self):
random.shuffle(self.__deck)
self.__index = 0

def show_hand(self, hand):
return “%s (%d)” % (“,”.join(str(card) for card in hand), self.score(hand))

def score(self, hand):
total = 0
aces = 0
for card in hand:
total += card.val
if card.val == 11:
aces += 1
while total > 21 and aces:
total -= 10
aces -= 1

def main():
pot = 20
while pot > 0:
bet = int(input(“You have %d available, how much do you want to bet? (0 to end) ” % pot))
if not bet:
break
if bet < 1:
bet = 1
if bet > pot:
bet = pot
deck = Deck()
player = [deck.draw(), deck.draw()]
dealer = [deck.draw(), deck.draw()]
pot -= bet
while True:
print(“You have:”, deck.show_hand(player))
print(“Dealer shows:”, dealer)
move = input(“(s)tick, (d)raw: “)
if move in “sS”:
break
if move in “dD”:
player.append(deck.draw())
player_score = deck.score(player)
if player_score > 21:
break

player_score = deck.score(player)
if player_score > 21:
print(“Player bust”)
continue

dealer_score = deck.score(dealer)
print(“Dealer has:”, deck.show_hand(dealer))
while dealer_score < 17:
dealer.append(deck.draw())
dealer_score = deck.score(dealer)
print(“Dealer has:”, deck.show_hand(dealer))

if dealer_score > 21:
print(“Dealer bust”)
pot += bet * 2
elif player_score == dealer_score:
print(“Draw”)
pot += bet
elif dealer_score > player_score:
print(“Dealer wins”)
else:
print(“You win”)
pot += bet * 2

print(\n\nYou ended up with \$%d” % pot)

main()

We can work on assignments far more complex than this, and in multiple programming languages. I’ve used Python to write GUI programs, web servers, games (using Pygame) and even a simple compiler.

You can rely on Programming Assignment Helper if you need someone to do my Python homework.