2016-12-31 13 views
0

私は単純なブラックジャックゲームに取り組んでいます。私は、リスト内の特定の項目に整数値を代入するにはどうすればよいリスト内の値をPythonの整数に関連付ける

deck = ['Ace',2,3,4,5,6,7,8,9,10,'Jack','Queen','King'] 

card_1 = random.choice(deck) 
card_2 = random.choice(deck) 

def my_hand(card_1,card_2): 
    total = card_1 + card_2 
    if total > 21: 
     return "Bust!" 
    elif total == 21: 
     return "Blackjack!" 
    elif total < 21: 
     return "Hit again?" 

print card_1,'and',card_2 
my_hand(card_1,card_2) 

?つまり、整数1または11に 'Ace'を割り当て、「ジャック」、「キング」、「クイーン」を10に割り当てたいとします。

ありがとうございます。

+0

私はあなたが望むものを明確にしていません。 'deck'リストを更新しますか?または、1または11の「エース」を別のデータ構造にマップしたいですか? –

+0

「Ace」などの名前で始まるのはなぜですか?数字だけを使ってプログラム全体でカードを表現し、それらを人間に出力するための言葉に変換してください。コンピュータ言語*が文字列を使うことができるという理由だけでは、それは良い考えではありません。 –

答えて

3

(と私はあなたが文字列にすべてのキーを変換することを示唆している)の辞書を使用します。

deck = {'Ace':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':9,'10':10, 
'Jack':10,'Queen':10,'King':10} 
+0

それはうまくいくが、ばかだ。カードは数字だけで表現し、人間に出力してから「エース」のような名前に変換する必要があります。 –

関連する問題