I am trying to make function pc_moves() to return sum(computers_cards) but when 4th value is added, it ignores 4th value.
cards = [11, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10, 10, 10]
your_cards = []
computers_cards = []
game = True
pc_sum = 0
def f_wants_to_play():
global game
wants_to_play = input("Do you want to play a game of Blackjack? Type 'y' or 'n':")
if wants_to_play == "y":
print("blackjack")
elif wants_to_play == "n":
print("You don't wanna play! Goodbye!")
game = False
else:
print("Type 'y' or 'n'!")
f_wants_to_play()
def pc_moves():
global pc_sum
global computers_cards
computers_cards = random.sample(cards, 2)
pc_sum = sum(computers_cards)
print(f"computers cards: {computers_cards}")
def add_new_card_pc(pc_sum, computers_cards):
if pc_sum == 22:
return pc_sum
elif pc_sum < 17:
computers_cards.append(random.choice(cards))
pc_sum = sum(computers_cards)
if pc_sum == 21:
return pc_sum
elif pc_sum > 21:
if 11 in computers_cards:
place_of_ace = computers_cards.index(11)
computers_cards[place_of_ace] = 1
pc_sum = sum(computers_cards)
if pc_sum > 21:
return pc_sum
else:
add_new_card_pc(pc_sum, computers_cards)
else:
return pc_sum
elif 17<pc_sum<21:
return pc_sum
else:
add_new_card_pc(pc_sum, computers_cards)
return pc_sum
pc_sum = add_new_card_pc(pc_sum, computers_cards)
def blackjack():
while game == True:
f_wants_to_play()
if not game:
break
your_cards = random.sample(cards, 2)
print(f"Your cards: {your_cards}, current score: {your_cards[0]+your_cards[1]}")
user_sum = sum(your_cards)
pc_moves()
print(f"pc sum : {pc_sum} computers_cards: {computers_cards}")
blackjack()
It is ignoring 4th value. For example result:
Do you want to play a game of Blackjack? Type 'y' or 'n':y
blackjack
Your cards: [10, 10], current score: 20
computers cards: [4, 11]
pc sum : 15 computers_cards: [4, 1, 10, 10]