Created
October 12, 2016 10:06
-
-
Save yunsu3042/d356d0b4152a0b71220e6cf79fd360f6 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import random | |
def new_card(): | |
DEX = [1,2,3,4,5,6,7,8,9,10,'A','J','K','Q'] | |
card = DEX * 4 | |
random.shuffle(card) | |
return card | |
player_card = [] | |
dealer_card = [] | |
def play_dealer(card): | |
print("dealer_card {}".format(dealer_card)) | |
while (1): | |
score_list = calc_score(dealer_card) | |
cur_score = select_score(score_list) | |
print(dealer_card, score_list, cur_score) | |
if cur_score > 17: | |
if score_list[0] < 20 and 'A' in dealer_card: | |
pass | |
else: | |
break | |
dealer_card.append(card.pop()) | |
return cur_score | |
def game_player(game_no, card): | |
while (1): | |
score_list = calc_score(player_card) | |
print("Game no {}".format(game_no)) | |
print("cards {}".format(player_card)) | |
print("scores {}".format(score_list)) | |
cur_score = select_score(score_list) | |
if cur_score > 21: | |
print("player burst") | |
break | |
while (1): | |
res = input("Hit or Stand(h or s)") | |
if res == 'h' or res == 's': | |
break | |
if res == 's': | |
break | |
player_card.append(card.pop()) | |
my_score = cur_score | |
return my_score | |
def select_score(score_list): | |
if len(score_list) == 1: | |
my_score = score_list[0] | |
else: | |
if score_list[1] > 21: | |
my_score = score_list[0] | |
else: | |
my_score = score_list[1] | |
print(score_list, my_score) | |
return my_score | |
def calc_score(card_list): | |
score0 = 0 | |
score1 = 0 | |
for c in card_list: | |
if c == 'A': | |
if score1 == score0: | |
score1 += 11 | |
else: | |
score1 += 1 | |
score0 += 1 | |
elif c == 'J' or c == 'Q' or c == 'K': | |
score0 += 10 | |
score1 += 10 | |
else: | |
score0 += c | |
score1 += c | |
if score0 == score1: | |
return (score0,) | |
else: | |
return (score0, score1) | |
game_no = 1 | |
while(1): | |
card = new_card() | |
player_card = [] | |
dealer_card = [] | |
player_card.append( card.pop() ) | |
player_card.append( card.pop() ) | |
dealer_card.append( card.pop() ) | |
player_score = game_player( game_no,card) | |
dealer_score = play_dealer(card) | |
print(player_score, dealer_score) | |
game_no += 1 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment