My return value is always printing out a total of 20 regardless of what cards are in the user_hand. Any reason as to why?
suits = ["Heart", "Diamond", "Spade", "Club"]
ranks = ['A', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K']
deck = [(suit, rank) for rank in ranks for suit in suits]
random.shuffle(deck,random.random)
user_hand = []
dealer_hand = []
user_hand.append(deck.pop())
dealer_hand.append(deck.pop())
user_hand.append(deck.pop())
dealer_hand.append(deck.pop())
def handtotal (hand):
total = 0
for rank in hand:
if rank == "J" or "Q" or "K":
total += 10
elif rank == 'A' and total < 11:
total += 11
elif rank == 'A' and total >= 11:
total += 1
elif rank == '2':
total += 2
elif rank == '3':
total += 3
elif rank == '4':
total += 4
elif rank == '5':
total += 5
elif rank == '6':
total += 6
elif rank == '7':
total += 7
elif rank == '8':
total += 8
elif rank == '9':
total += 9
return total
print ("Your current hand is {}".format(user_hand))
print ("This provides you with a total of:")
print (handtotal(user_hand))