То, что вы делаете, в основном правильно, но некоторые операции выполняются в неправильном порядке. Вам нужно получить значение первой карты до того, как вы удалите ее из колоды, а не после. Моя переделка вашего кода:
import random
deck = {
'K ♥':10, 'Q ♥':10, 'J ♥':10, '10 ♥':10, '9 ♥':9, '8 ♥':8,
'7 ♥':7, '6 ♥':6, '5 ♥':5, '4 ♥':4, '3 ♥':3, '2 ♥':2, 'A ♥':11,
'K ◆':10, 'Q ◆':10, 'J ◆':10, '10 ◆':10, '9 ◆':9, '8 ◆':8,
'7 ◆':7, '6 ◆':6, '5 ◆':5, '4 ◆':4, '3 ◆':3, '2 ◆':2, 'A ◆':11,
'K ♣':10, 'Q ♣':10, 'J ♣':10, '10 ♣':10, '9 ♣':9, '8 ♣':8,
'7 ♣':7, '6 ♣':6, '5 ♣':5, '4 ♣':4, '3 ♣':3, '2 ♣':2, 'A ♣':11,
'K ♠':10, 'Q ♠':10, 'J ♠':10, '10 ♠':10, '9 ♠':9, '8 ♠':8,
'7 ♠':7, '6 ♠':6, '5 ♠':5, '4 ♠':4, '3 ♠':3, '2 ♠':2, 'A ♠':11
}
card1 = random.choice(list(deck))
value1 = deck.get(card1)
del deck[card1]
card2 = random.choice(list(deck))
value2 = deck.get(card2)
print(card1)
print(card2)
print(value1 + value2)
OUTPUT
> python3 test.py
A ◆
9 ♥
20
>