2016-11-29 1 views
0

このコードはどうすればこの加算方法を簡単にすることができますか?

# Rules 
print("Dont enter Ace, Jack, Queen or king in the first 4 Inputs") 
print("You will be told when to enter those") 
print("if you dont have a card just enter 0") 

# Line break 
print("") 

card1 = int(input("What is your first card: ")) 
card2 = int(input("What is your second card: ")) 
card3 = int(input("What is your third card: ")) 
card4 = int(input("What is your fourth card: ")) 


# Line break 
print("") 

# print("King = 10 \nJack = 10 \nQueen = 10 \nAce = 11 or 1 ") 
AJKQ = (input("Any Ace, jack, Queens or kings: ")) 
AJKQ2 = (input("Any Ace, jack, Queens or kings: ")) 

# Line Break 
print("") 

print(card1 + card2 + card3 + card4 + AJKQ + AJKQ2) 

コードが

イムも、ユーザーが持っているカードとエースで出力して、ジャックの女王と王を追加する必要があります(ブラックジャックのゲームで)カードのセットを追加しますifとelifでうまくいかないので、これをより小さなコードに圧縮する最良の方法は何ですか?

+4

コードが動作している場合は、ここではおそらくオフトピックです。代わりにhttps://codereview.stackexchange.com/にお送りください。 – Chris

+2

なぜあなたのユーザーはEnterキーを押すと多くの時間がかかるのですか? 'cards = input( 'あなたのカードをすべて入力し、その間にスペースを入れてください')split()' **誰もコンピュータとの対話を好きではありません。 – FMc

+0

@FMc - 入力がすべて数字の場合、スペースバーの代わりにEnterキーを押すと、多くのキーボードの数字パッドにEnterキーが表示されるので、より簡単です。 – TigerhawkT3

答えて

0
print("""Dont enter Ace, Jack, Queen or king in the first 4 Inputs 
You will be told when to enter those. 
if you dont have a card just enter 0\n""") 

print(sum([int(input("what is your "+ char +" card: ")) for char in("first", "second", "third","fourth")]) + 
sum([int(input("Any Ace, jack, Queens or kings: ")) for i in range(0,2)])) 

これは問題ないはずです。

+0

ありがとう、これは助けになりました、 – Cyqix

0
cards = ['first', 'second', 'third', 'fourth'] 
card = [] 
for value in cards: 
    card.append(int(input("What is your "+value+" card: "))) 

... 

print("".join(card) + AJKQ + AJKQ2) 
+0

これは有効な回答かもしれませんが、コードの動作とその動作を説明することで、他の人を助ける可能性が非常に高くなります。コードのみの回答は、それほど肯定的な注意を払わず、他の回答ほど有用ではありません。 – Aurora0001

関連する問題