Jul-09-2020, 04:51 PM
(This post was last modified: Jul-09-2020, 04:56 PM by mrdominikku.)
It hurts my eyes reading your code, but here you have it:
Line 82: total = num1 + num2 - as a sum of cards from previous draws
Line 99: total = total + xnum - increment total each time you draw new card
Line 82: total = num1 + num2 - as a sum of cards from previous draws
Line 99: total = total + xnum - increment total each time you draw new card
# blackjack import random deck = ["2+diamonds", "3+diamonds", "4+diamonds", "5+diamonds", "6+diamonds", "7+diamonds", "8+diamonds", "9+diamonds", "10+diamonds", "j+diamonds", "q+diamonds", "k+diamonds", "a+diamonds", "2+clubs", "3+clubs", "4+clubs", "5+clubs", "6+clubs", "7+clubs", "8+clubs", "9+clubs", "10+clubs", "j+clubs", "q+clubs", "k+clubs", "a+clubs", "2+hearts", "3+hearts", "4+hearts", "5+hearts", "6+hearts", "7+hearts", "8+hearts", "9+hearts", "10+hearts", "j+hearts", "q+hearts", "k+hearts", "a+hearts", "2+spades", "3+spades", "4+spades", "5+spades", "6+spades", "7+spades", "8+spades", "9+spades", "10+spades", "j+spades", "q+spades", "k+spades", "a+spades"] BASIC_DECK = ['2', '3', '4', '5', '6', '7', '8', '9', '10'] JQK_DECK = ['j', 'q', 'k'] ACE_DECK = ['a'] playershand = [] dealerhand = [] for i in range(2): a = random.choice(deck) print(a) deck.remove(a) playershand.append(a) firstcard = playershand[0] secondcard = playershand[1] x = firstcard.split("+") y = secondcard.split("+") num1 = x[0] num2 = y[0] if num1 in BASIC_DECK: num1 = int(num1) elif num1 in JQK_DECK: num1 = 10 elif num1 in ACE_DECK: num1 = 11 if num2 in BASIC_DECK: num2 = int(num2) elif num2 in JQK_DECK: num2 = 10 elif num2 in ACE_DECK: num2 = 11 total = num1 + num2 print("The total is", total) b = random.choice(deck) deck.remove(b) c = random.choice(deck) deck.remove(c) print("The dealer has", b, c) b = b.split("+") c = c.split("+") dnum1 = b[0] dnum2 = c[0] if dnum1 in BASIC_DECK: dnum1 = int(dnum1) elif dnum1 in JQK_DECK: dnum1 = 10 elif dnum1 in ACE_DECK: dnum1 = 11 if dnum2 in BASIC_DECK: dnum2 = int(dnum2) elif dnum2 in JQK_DECK: dnum2 = 10 elif dnum2 in ACE_DECK: dnum2 = 11 dnum1 = int(dnum1) dnum2 = int(dnum2) dtotal = dnum1 + dnum2 ans = input("Would you like another card? (y/n) ") total = num1 + num2 while ans == "y": xcard = (random.choice(deck)) print(xcard) playershand.append(xcard) deck.remove(xcard) print(playershand) x = xcard.split("+") xnum = x[0] if xnum in BASIC_DECK: xnum = int(xnum) elif xnum in JQK_DECK: xnum = 10 elif xnum in ACE_DECK: xnum = 11 total = total + xnum print(total) if total < 21: ans = input("Would you like another card? (y/n) ") continue if total > 21: print("BUST, you lose!") break if total == 21 or total>dtotal: print("BLACKJACK, you win!") breakEDIT: Line 107 if total == 21 or total>dtotal: - at blackjack you win when you have greater cards than dealer