From 6acf0cd01911d64ef38e9459bce94ca882924d8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A1=D0=BE=D1=84=D0=B8=D1=8F=20=D0=A5=D1=80=D0=B8=D1=81?= =?UTF-8?q?=D0=B0=D0=BD=D0=BA=D0=BE=D0=B2=D0=B0?= <132402521+sssoneta@users.noreply.github.com> Date: Tue, 8 Apr 2025 20:34:42 +0300 Subject: [PATCH 1/4] dz5 --- project/UML.png | Bin 0 -> 314378 bytes project/example/example.py | 14 ++ project/example/example.txt | 170 +++++++++++++++++ project/scr/desk.py | 77 ++++++++ project/scr/game.py | 368 ++++++++++++++++++++++++++++++++++++ project/scr/objects.py | 325 +++++++++++++++++++++++++++++++ project/scr/persons.py | 70 +++++++ project/scr/strategies.py | 237 +++++++++++++++++++++++ scripts/test_blackjak.py | 122 ++++++++++++ 9 files changed, 1383 insertions(+) create mode 100644 project/UML.png create mode 100644 project/example/example.py create mode 100644 project/example/example.txt create mode 100644 project/scr/desk.py create mode 100644 project/scr/game.py create mode 100644 project/scr/objects.py create mode 100644 project/scr/persons.py create mode 100644 project/scr/strategies.py create mode 100644 scripts/test_blackjak.py diff --git a/project/UML.png b/project/UML.png new file mode 100644 index 0000000000000000000000000000000000000000..b7af98de2a4cf3288222499913cf51e201819020 GIT binary patch literal 314378 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

Sy^lHsobd|h{ZRj0=^^d* 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 None`: + Issues a card from the dealer's deck to the target hand. + + `place_first_bets() -> None`: + Players place their first bets in the amount specified in the strategy. + + `split(player: Player, id_hand: int) -> None`: + The method is called if the player has chosen split. + + `check_bet(id_player: int, bet: int) -> bool`: + Checks if the player has enough chips to bet. + + `next() -> None`: + Sets the starting parameters for the table. + + """ + + def __init__(self, players: list[Player], dealer_num_deck: int) -> None: + """Initializing a Desk object.""" + self.players = players + self.dealer = Dealer(dealer_num_deck) + self.hands: dict[Player, list[Hand]] = {} + + def dealer_give_card(self, target_hand: Hand) -> None: + """ + Issues a card from the dealer's deck to the target hand. + + Args: + target_hand (Hand): the hand to add the card to. + """ + card = self.dealer.give_card() + target_hand.add_card(card) + + def place_first_bets(self) -> None: + """Players place their first bets in the amount specified in the strategy.""" + for id_player, player in enumerate(self.players): + bet = player.strategy.first_bet + if not player.check_bet(bet): + self.hands[player][0].out() + continue + self.hands[player][0].set_first_bet(bet) + player.diff_chips(-bet) + + def split(self, player: Player, id_hand: int) -> None: + """ + The method is called if the player has chosen split. + + Args: + player (Player): the player who chose the split. + id_hand (int): the number of the hand for which the split is selected. + """ + hand = self.hands[player][id_hand] + + split_hand_1, split_hand_2 = hand.split() + self.dealer_give_card(split_hand_1) + self.dealer_give_card(split_hand_2) + + self.hands[player][id_hand] = split_hand_1 + self.hands[player].append(split_hand_2) + + def next(self) -> None: + """Sets the starting parameters for the table.""" + self.dealer.restart() + for player in self.players: + self.hands[player] = [Hand()] diff --git a/project/scr/game.py b/project/scr/game.py new file mode 100644 index 00000000..5e77101c --- /dev/null +++ b/project/scr/game.py @@ -0,0 +1,368 @@ +from project.scr.objects import HandStates, Card, Hand +from project.scr.persons import Player +from project.scr.strategies import Action +from project.scr.desk import Desk +from enum import Enum + + +def show_hand_player(hand: Hand, id_player: int) -> None: + print(f"Player {id_player + 1}'s hand:") + hand.show_hand() + + +class GameStates(Enum): + """Enum to indicate the state of the game.""" + + START = "The round has begun" + PLACE_BETS = "Bets have been placed" + DEALER_START = "The dealer took a closed and an open card" + TOOK_CARDS = "The players took the cards" + DEALER_SECOND_CARD = "The dealer opens the second card" + DEALER_PLAY = "The dealer takes the cards" + RESULTS = "The results of the game are summarized" + END = "The round is over" + + +class Game: + """ + The controller class for the game table. + It contains information about the players, + the current state of the game and the game table. + + Methods: + ------- + `_show_state() -> None`: + The method of displaying information depending on the current state of the game. + + `_start_game() -> None`: + Sets the initial parameters before starting the game. + + `_place_bets() -> None`: + The players place their first bets. + + `_dealer_start() -> None`: + The dealer starts the game. + + `_take_cards() -> None`: + The players take the cards according to the strategy. + + `_dealer_second_card() -> None`: + The dealer opens the second card. + + `_dealer_play() -> None`: + The dealer takes the missing cards. + + `_round_results() -> None`: + The results of the game are summarized. + + `_end_round() -> None`: + Completes the round. + + `_play_with_player(id_player: int, dealer_card: Card) -> bool`: + Player takes the cards depending on the strategy. + + `get_state() -> GameStates`: + Returns the game state. + + `play_steps(num_steps: int = 8) -> None`: + Performs the first n steps of the game. + + 'play_round_with_show_states(self) -> None' + Starts a full round and outputs information to the console at each stage. + """ + + def __init__(self, players: list[Player], dealer_num_deck: int = 1) -> None: + """Initializing a Game object""" + self._desk = Desk(players, dealer_num_deck) + self._num_round = 0 + self._round_state = GameStates.START + + def _show_state(self) -> None: + """The method of displaying information depending on the current state of the game.""" + print(self._round_state.value) + match self._round_state: + case GameStates.START: + print("Round:", self._num_round) + case GameStates.PLACE_BETS: + for id_player, player in enumerate(self._desk.players): + self._desk.hands[player][0].show_bet(id_player) + case GameStates.TOOK_CARDS: + for id_player, player in enumerate(self._desk.players): + if self._desk.hands[player][0].get_state() is HandStates.OUT: + continue + for hand in self._desk.hands[player]: + show_hand_player(hand, id_player) + hand.show_history() + print() + case GameStates.RESULTS: + for id_player, player in enumerate(self._desk.players): + if self._desk.hands[player][0].get_state() is HandStates.OUT: + continue + print(f"The result of player {id_player + 1}") + for hand in self._desk.hands[player]: + show_hand_player(hand, id_player) + hand.show_history() + hand.show_state() + print() + case GameStates.DEALER_START: + print("The dealer's first card:") + print(self._desk.dealer.hand.get_card(0)) + case GameStates.DEALER_PLAY: + self._desk.dealer.show_hand() + case GameStates.DEALER_SECOND_CARD: + self._desk.dealer.show_hand() + print("\n") + + def _start_game(self) -> None: + """Sets the initial parameters before starting the game.""" + self._round_state = GameStates.START + self._num_round += 1 + self._desk.next() + + def _place_bets(self) -> None: + """The players place their first bets.""" + self._round_state = GameStates.PLACE_BETS + self._desk.place_first_bets() + + def _dealer_start(self) -> None: + """The dealer took a closed and an open card.""" + self._round_state = GameStates.DEALER_START + self._desk.dealer_give_card(self._desk.dealer.hand) + self._desk.dealer_give_card(self._desk.dealer.hand) + + def _take_cards(self) -> None: + """The players take the cards according to the strategy.""" + self._round_state = GameStates.TOOK_CARDS + dealer_card = self._desk.dealer.hand.get_card(0) + for id_player, player in enumerate(self._desk.players): + player_hand = self._desk.hands[player][0] + if not player_hand.in_playing: + continue + self._desk.dealer_give_card(self._desk.hands[player][0]) + self._desk.dealer_give_card(self._desk.hands[player][0]) + + if player_hand.check_blackjack(): + player_hand._state = HandStates.BLACKJACK + if ( + player_hand.get_state() is HandStates.BLACKJACK + and not self._desk.dealer.hand.get_card(0).name + in { + "10", + "J", + "Q", + "K", + "A", + } + ): + player.diff_chips(int(player_hand.get_bet() * 2.5)) + player_hand.game_over() + continue + elif ( + player_hand.get_state() is HandStates.BLACKJACK + and self._desk.dealer.hand.get_card(0).name == "A" + ): + if player.strategy.even_money: + player_hand.even_money() + player.diff_chips(int(player_hand.get_bet() * 2)) + player_hand.game_over() + continue + + while self._play_with_player(id_player, dealer_card): + pass + + def _dealer_second_card(self) -> None: + """The dealer opens the second card.""" + self._round_state = GameStates.DEALER_SECOND_CARD + for (id_player, player) in enumerate(self._desk.players): + for id_hand, hand in enumerate(self._desk.hands[player]): + if not hand.in_playing: + continue + + if ( + hand.get_state() is HandStates.BLACKJACK + and not self._desk.dealer.hand.get_state() is HandStates.BLACKJACK + ): + player.diff_chips(int(hand.get_bet() * 2.5)) + hand.game_over() + elif ( + not hand.get_state() is HandStates.BLACKJACK + and self._desk.dealer.hand.get_state() is HandStates.BLACKJACK + ): + hand._state = HandStates.LOSE + hand.game_over() + + def _dealer_play(self) -> None: + """The dealer takes the missing cards.""" + self._round_state = GameStates.DEALER_PLAY + while True: + dealer_score = self._desk.dealer.hand.get_score() + if dealer_score == -1 or dealer_score >= 17: + break + self._desk.dealer_give_card(self._desk.dealer.hand) + + def _round_results(self) -> None: + """The results of the game are summarized.""" + self._round_state = GameStates.RESULTS + dealer_score = self._desk.dealer.hand.get_score() + for (id_player, player) in enumerate(self._desk.players): + for id_hand, hand in enumerate(self._desk.hands[player]): + if not hand.in_playing: + continue + + hand_score = hand.get_score() + + if hand_score > dealer_score: + hand._state = HandStates.WIN + player.diff_chips(hand.get_bet() * 2) + hand.game_over() + + elif hand_score == dealer_score: + hand._state = HandStates.DRAWN_GAME + player.diff_chips(hand.get_bet()) + hand.game_over() + else: + hand._state = HandStates.LOSE + hand.game_over() + + def _end_round(self) -> None: + """Completes the round.""" + self._round_state = GameStates.END + + def _play_with_player(self, id_player: int, dealer_card: Card) -> bool: + """ + Player takes the cards depending on the strategy. + + Args: + id_player (int): the index of the player in the list of players. + dealer_card (Card): dealer's open card. + + Returns: + result (bool): a flag indicating that the player has not finished the game. + """ + target_player = self._desk.players[id_player] + for id_hand, hand in enumerate(self._desk.hands[target_player]): + if not hand.in_playing or hand.get_history()[-1] == "pass": + continue + while True: + score = hand.get_score() + if score == -1: + hand._state = HandStates.LOSE + hand.game_over() + break + elif score == 21: + break + + action = target_player.strategy.play(hand, dealer_card) + match action: + case Action.PASS: + hand.action_pass() + break + + case Action.TAKE: + self._desk.dealer_give_card(hand) + + case Action.SPLIT: + if not target_player.check_bet(hand.get_bet()): + hand.action_pass() + break + target_player.diff_chips(-hand.get_bet()) + self._desk.split(target_player, id_hand) + return True + + case Action.DOUBLE: + if not target_player.check_bet(hand.get_bet()): + self._desk.dealer_give_card(hand) + continue + target_player.diff_chips(-hand.get_bet()) + hand.double_down() + self._desk.dealer_give_card(hand) + + case Action.TRIPLING: + if not hand.double_bet: + raise ValueError( + "Before tripling the bets, you need to double them." + ) + if not target_player.check_bet(hand.get_bet() // 2): + self._desk.dealer_give_card(hand) + continue + target_player.diff_chips(-hand.get_bet() // 2) + hand.tripling_bet() + + case Action.SURRENDER: + target_player.diff_chips(hand.get_bet() // 2) + hand._state = HandStates.LOSE + hand.game_over() + break + return False + + def get_state(self) -> GameStates: + """Returns the game state.""" + return self._round_state + + def play_steps(self, num_steps: int = 8) -> None: + """Performs the first number steps of the game.""" + if not num_steps: + return + + self._start_game() + num_steps -= 1 + if not num_steps: + return + + self._place_bets() + num_steps -= 1 + if not num_steps: + return + + self._dealer_start() + num_steps -= 1 + if not num_steps: + return + + self._take_cards() + num_steps -= 1 + if not num_steps: + return + + self._dealer_second_card() + num_steps -= 1 + if not num_steps: + return + + self._dealer_play() + num_steps -= 1 + if not num_steps: + return + + self._round_results() + num_steps -= 1 + if not num_steps: + return + + self._end_round() + + def play_round_with_show_states(self) -> None: + """Performs a full round and outputs information to the console at each stage.""" + self._start_game() + self._show_state() + + self._place_bets() + self._show_state() + + self._dealer_start() + self._show_state() + + self._take_cards() + self._show_state() + + self._dealer_second_card() + self._show_state() + + self._dealer_play() + self._show_state() + + self._round_results() + self._show_state() + + self._end_round() + self._show_state() diff --git a/project/scr/objects.py b/project/scr/objects.py new file mode 100644 index 00000000..411adcac --- /dev/null +++ b/project/scr/objects.py @@ -0,0 +1,325 @@ +import random +from itertools import product +from enum import Enum +from typing import Any + + +class Card: + """ + A class containing information about the value of the card. + + Methods: + ------- + `__str__() -> str`: + Returns a string representation of the card. + """ + + def __init__(self, suit: str, name: str | int) -> None: + """Initializing a Card object""" + self.suit = suit + self.name = str(name) + + def __str__(self) -> str: + """Returns a string representation of the card.""" + return f"{self.name} of {self.suit}" + + +class Deck: + """ + A deck of cards. + + Methods: + ------- + `shuffle() -> None`: + Shuffles the deck of cards. + + `pull() -> Card`: + Removes and returns the card at the beginning of the deck. + + """ + + def __init__(self) -> None: + """Initializing a Deck object""" + self._cards = [ + Card(card[0], card[1]) + for card in product( + ["Spades", "Hearts", "Diamonds", "Clubs"], + list(range(2, 11)) + ["J", "Q", "K", "A"], + ) + ] + self.shuffle() + + def shuffle(self) -> None: + """Shuffles the deck of cards.""" + random.shuffle(self._cards) + + def pull(self) -> Card: + """Removes and returns the card at the beginning of the deck.""" + return self._cards.pop(0) + + +class Cards: + """ + The data-descriptor class for storing cards, scores, and game history. + """ + + def __init__(self) -> None: + self._data: dict[Hand, dict[str, Any]] = {} + + def __get__(self, instance: Any, owner: Any) -> Any: + if instance is None: + return self + if instance not in self._data: + self._data[instance] = {"cards": [], "score": 0, "history": []} + return self._data[instance] + + def __set__(self, instance: Any, value: Any) -> None: + self._data[instance] = value + + +class HandStates(Enum): + """Enum to indicate the state of the hand.""" + + DEFAULT = "The game is on" + WIN = "Winning hand" + LOSE = "Losing hand" + BLACKJACK = "Blackjack" + DRAWN_GAME = "Equal score" + OUT = "Out of the game" + + +class Hand: + """ + The controller class above the Cards data-descriptor. + The class responsible for the current state of the hand, the bet and the cards. + + Methods: + ------- + `game_over() -> None`: + Resets the bet and withdraws the hand from the game. + + 'out() -> None': + Switches the hand to an out-of-play state. + + `double_down() -> None`: + Doubles the bet. + + `tripling_bet() -> None`: + Triples the bet. + + 'split() -> tuple["Hand", "Hand"]': + The method for calling the split hand. + + 'action_pass() -> None': + Performs the pass action + + 'even_money() -> None': + Performs the even money action + + `add_card(card: Card) -> None`: + Adds a card to his hand and recalculates the scores. + + `calculate_score() -> None`: + Recalculate the scores. + + 'set_first_bet(first_bet: int) -> None': + If there is no first bid, then sets it. + + `check_blackjack() -> bool`: + Check if there is a blackjack on this hand. + + `get_card(id_card: int) -> Any`: + Returns the card with the number starting from the first received one. + + `get_scores() -> Any`: + Returns the scores. + + 'get_cards() -> Any': + Returns the cards. + + 'get_history() -> Any': + Returns the history. + + 'get_bet() -> int': + Returns the bet. + + 'get_state() -> HandStates': + Returns the hand state. + + 'show_history() -> None': + Displays the console history of the player's actions. + + 'show_hand(self) -> None': + Displays the cards on your hand in the console. + + 'show_bet(id_player: int) -> None': + Displays the current bet in the console. + + 'show_state(self) -> None': + Displays the current hand status in the console. + """ + + _hand = Cards() + + def __init__(self) -> None: + """Initializing a Deck object""" + self._bet = 0 + self.in_playing = True + self.double_bet = False + self.tripled_bet = False + self._state = HandStates.DEFAULT + + def game_over(self) -> None: + """Resets the bet and withdraws the hand from the game.""" + self._bet = 0 + self.in_playing = False + + def out(self) -> None: + """Switches the hand to an out-of-play state.""" + self.game_over() + self._state = HandStates.OUT + + def double_down(self) -> None: + """Doubles the bet.""" + self._bet *= 2 + self.double_bet = True + self._hand["history"].append("double down") + + def tripling_bet(self) -> None: + """Triples the bet.""" + self._bet += int(self._bet // 2) + self.tripled_bet = True + self._hand["history"].append("tripling bet") + + def split(self) -> tuple["Hand", "Hand"]: + """ + The method for calling the split hand. + + Returns: + result ("Hand", "Hand"): two hands after the split. + """ + bet = self._bet + + split_hand_1 = Hand() + split_hand_1._hand["history"] = ["split"] + split_hand_1._bet = bet + split_hand_1.add_card(self.get_card(0)) + + split_hand_2 = Hand() + split_hand_2._hand["history"] = ["split"] + split_hand_2._bet = bet + split_hand_2.add_card(self.get_card(1)) + return split_hand_1, split_hand_2 + + def action_pass(self) -> None: + """Performs the pass action""" + self._hand["history"].append("pass") + + def even_money(self) -> None: + """Performs the even money action""" + self._hand["history"].append("even money") + + def add_card(self, card: Card) -> None: + """ + Adds a card to his hand and recalculate the scores. + + Args: + card (Card): the card that was added to the hand. + """ + self._hand["cards"].append(card) + self.calculate_score() + self._hand["history"].append("add card") + + def calculate_score(self) -> None: + """Recalculate the scores.""" + scores = {0} + for card in self._hand["cards"]: + match card.name: + case "A": + scores = set(map(lambda x: x + 1, scores)) + scores.update(set(map(lambda x: x + 10, scores))) + case "K" | "Q" | "J" | "10": + scores = set(map(lambda x: x + 10, scores)) + case _: + scores = set(map(lambda x: x + int(card.name), scores)) + filter_scores = list(filter(lambda x: x <= 21, scores)) + if len(filter_scores) == 0: + self._hand["score"] = -1 + else: + self._hand["score"] = max(filter_scores) + + def set_first_bet(self, first_bet: int) -> None: + """If there is no first bid, then sets it.""" + if self._bet == 0: + self._bet = first_bet + + def check_blackjack(self) -> bool: + """ + Check if there is a blackjack on this hand. + + Returns: + result (bool): is blackjack + """ + return 21 == self._hand["score"] and len(self._hand["cards"]) == 2 + + def get_card(self, id_card: int) -> Any: + """ + Returns the card with the number starting from the first received one. + + Args: + id_card (int): index of the card in hand. + + Returns: + result (Any): card is under the desired index. + """ + return self._hand["cards"][id_card] + + def get_score(self) -> Any: + """Returns the scores""" + return self._hand["score"] + + def get_cards(self) -> Any: + """Returns the cards""" + return self._hand["cards"] + + def get_history(self) -> Any: + """Returns the history.""" + return self._hand["history"] + + def get_bet(self) -> int: + """Returns the bet.""" + return self._bet + + def get_state(self) -> HandStates: + """Returns the hand state.""" + return self._state + + def show_history(self) -> None: + """Displays the console history of the player's actions.""" + print("History of actions:") + print(self._hand["history"], sep=", ") + + def show_hand(self) -> None: + """Displays the cards on your hand in the console.""" + print("Hand:", end=" ") + for card in self._hand["cards"]: + print(card, end="; ") + print() + + print("Score:", end=" ") + if self._hand["score"] == -1: + print("bust") + else: + print(self._hand["score"]) + + def show_bet(self, id_player: int) -> None: + """Displays the current bet in the console.""" + print(f"Player's {id_player + 1} bet:", end=" ") + if self._state is HandStates.OUT: + print("not enough chips") + else: + print(self._bet) + + def show_state(self) -> None: + """Displays the current hand status in the console.""" + print("Hand condition:", self._state.value) diff --git a/project/scr/persons.py b/project/scr/persons.py new file mode 100644 index 00000000..235fa096 --- /dev/null +++ b/project/scr/persons.py @@ -0,0 +1,70 @@ +from project.scr.objects import Deck, Hand, Card +import random +from project.scr.strategies import Basic, Strategy + + +class Player: + """ + The player's class stores the number of chips and the strategy of the game. + + Methods: + ------- + 'diff_chips(delta: int) -> None': + Calculates the difference of chips. + + 'check_bet(self, bet: int) -> bool': + Checks if the player has enough chips to bet. + """ + + def __init__(self, strategy: Strategy = Basic(), chips: int = 100) -> None: + """Initializing a Player object.""" + self.strategy = strategy + self._chips = chips + + def diff_chips(self, delta: int) -> None: + """Calculates the difference of chips.""" + self._chips += delta + + def check_bet(self, bet: int) -> bool: + """Checks if the player has enough chips to bet.""" + if bet > self._chips: + return False + return True + + +class Dealer: + """ + The dealer's class that stores the dealer's decks and hand. + + Methods: + ------- + 'give_card() -> Card': + A method for extracting a card from the deck. + + 'show_hand() -> None': + A method for displaying information about the dealer's hand in the console. + + 'restart() -> None': + A method that returns the dealer's state to the beginning of the game. + """ + + def __init__(self, num_decks: int) -> None: + """Initializing a Dealer object.""" + self._num_decks = num_decks + self.hand = Hand() + self._decks = [Deck() for _ in range(num_decks)] + + def give_card(self) -> Card: + """A method for extracting a card from the deck.""" + id_deck = random.randint(0, self._num_decks - 1) + return self._decks[id_deck].pull() + + def show_hand(self) -> None: + """A method for displaying information about the dealer's hand in the console.""" + print("Dealer's Hand:") + self.hand.show_hand() + + def restart(self) -> None: + """A method that returns the dealer's state to the beginning of the game.""" + self.hand = Hand() + self._decks = [Deck() for _ in range(self._num_decks)] diff --git a/project/scr/strategies.py b/project/scr/strategies.py new file mode 100644 index 00000000..2efd860a --- /dev/null +++ b/project/scr/strategies.py @@ -0,0 +1,237 @@ +from enum import Enum +from project.scr.objects import Hand +from project.scr.objects import Card + + +class Action(Enum): + """Enumeration for actions taken by the player.""" + + PASS = 1 + TAKE = 2 + SPLIT = 3 + DOUBLE = 4 + TRIPLING = 5 + SURRENDER = 6 + + +class Strategy: + """ + Parent class for strategies + + Methods: + ______ + 'play(player_hand: Hand, dealer_card: Card) -> Action': + The method responsible for taking action in a specific situation. + """ + + first_bet = 10 + even_money = False + + def play(self, player_hand: Hand, dealer_card: Card) -> Action: + """ + The method responsible for taking action in a specific situation. + + Args: + player_hand (Hand): the hand of the player making the decision. + dealer_card (Card): the dealer's card that the players see. + + Results: + return (Action): the action taken by the player. + """ + raise NotImplementedError("Subclass must implement play method") + + +class Basic(Strategy): + def __init__(self) -> None: + self.even_money = True + + def play(self, player_hand: Hand, dealer_card: Card) -> Action: + score = player_hand.get_score() + if score < 17: + return Action.TAKE + return Action.PASS + + +class Optimal1(Strategy): + def play(self, player_hand: Hand, dealer_card: Card) -> Action: + score = player_hand.get_score() + cards = player_hand.get_cards() + dealer_card_name = dealer_card.name + + split_res = check_split(cards, dealer_card.name) + if not split_res is None: + return split_res + + double_res = check_double(score, dealer_card_name) + if not double_res is None and not player_hand.double_bet: + return double_res + + if "A" in set(card.name for card in cards) and len(cards) == 2: + soft_hands = check_soft_hands(score - 10, dealer_card_name) + if not soft_hands is None: + return soft_hands + + steady_hand = check_steady_hands(score, dealer_card_name) + if not steady_hand is None: + return steady_hand + + if score >= 17: + return Action.PASS + return Action.TAKE + + +class Aggressive(Strategy): + def __init__(self) -> None: + self.first_bet = 20 + + def play(self, player_hand: Hand, dealer_card: Card) -> Action: + score = player_hand.get_score() + dealer_card_name = dealer_card.name + + if score <= 6: + return Action.DOUBLE + + double_res = check_double(score, dealer_card_name) + if not double_res is None and player_hand.double_bet: + return Action.TRIPLING + + if score > 19: + return Action.PASS + return Action.TAKE + + +class Optimal2(Strategy): + def play(self, player_hand: Hand, dealer_card: Card) -> Action: + score = player_hand.get_score() + cards = player_hand.get_cards() + dealer_card_name = dealer_card.name + + split_res = check_split(cards, dealer_card_name) + if not split_res is None: + return split_res + + if not dealer_card_name in {"10", "J", "Q", "K", "A"}: + if score in {11, 10}: + return Action.DOUBLE + elif score <= 16: + return Action.TAKE + elif score <= 16: + return Action.TAKE + + if score >= 17: + return Action.PASS + return Action.TAKE + + +def check_split(cards: list[Card], dealer_card_name: str) -> Action | None: + """ + The function checks whether it is worth doing a split. + + Args: + cards (list[Card]): the cards are in the player's hand. + dealer_card_name (str): the dealer's open card. + + Returns: + result (Action | None): the action taken. + """ + if len(cards) != 2: + return None + if cards[1].name == cards[0].name: + match cards[0].name: + case "A" | "8": + if dealer_card_name != "A": + return Action.SPLIT + return Action.TAKE + case "5": + return Action.DOUBLE + + case "4": + if dealer_card_name in {"2", "3", "4", "5", "6"}: + return Action.SPLIT + case "9": + if dealer_card_name in {"7", "10", "11"}: + return Action.PASS + return Action.SPLIT + case "6": + if dealer_card_name in {"2", "3", "4", "5", "6"}: + return Action.SPLIT + return Action.TAKE + case "2" | "3" | "7": + if dealer_card_name in {"2", "3", "4", "5", "6", "7"}: + return Action.SPLIT + return Action.TAKE + return None + + +def check_double(score: int, dealer_card_name: str) -> Action | None: + """ + A function that checks whether it is worth doubling the bet. + + Args: + score (int): the player's current score. + dealer_card_name (str): the dealer's open card. + + Returns: + result (Action | None): the action taken. + """ + match score: + case 9: + if dealer_card_name in {"2", "3", "4", "5", "6"}: + return Action.DOUBLE + return Action.TAKE + case 10 | 11: + if dealer_card_name != "A": + if score == 11 or dealer_card_name in {"10", "J", "Q", "K"}: + return Action.DOUBLE + return Action.TAKE + return None + + +def check_soft_hands(score: int, dealer_card_name: str) -> Action | None: + """ + The decision-making function for a soft hand. + + Args: + score (int): the player's current score. + dealer_card_name (str): the dealer's open card. + + Returns: + result (Action | None): the action taken. + """ + match score: + case 3 | 4 | 5 | 6 | 7: + if dealer_card_name in {"2", "3", "4", "5", "6"}: + return Action.DOUBLE + return Action.TAKE + case 8: + if dealer_card_name in {"9", "10", "J", "Q", "K", "A"}: + return Action.TAKE + return Action.PASS + case 9 | 10 | 11: + return Action.PASS + return None + + +def check_steady_hands(score: int, dealer_card_name: str) -> Action | None: + """ + The decision-making function for a steady hand. + + Args: + score (int): the player's current score. + dealer_card_name (str): the dealer's open card. + + Returns: + result (Action | None): the action taken. + """ + match score: + case 4 | 5 | 6 | 7 | 8: + return Action.TAKE + + case 12 | 13 | 14 | 15 | 16: + if dealer_card_name in {"2", "3", "4", "5", "6"}: + return Action.PASS + return Action.TAKE + + case 17 | 18 | 19 | 20 | 21: + return Action.PASS + return None diff --git a/scripts/test_blackjak.py b/scripts/test_blackjak.py new file mode 100644 index 00000000..7948a176 --- /dev/null +++ b/scripts/test_blackjak.py @@ -0,0 +1,122 @@ +from project.scr.persons import Player +from project.scr.objects import Card, Hand, HandStates +from project.scr.game import Game, GameStates + +import pytest + +from project.scr.strategies import Optimal1, Aggressive, Optimal2 + +A = Card("suit", "A") +K = Card("suit", "K") +Q = Card("suit", "Q") +J = Card("suit", "J") +ten = Card("suit", "10") +nine = Card("suit", "9") +eight = Card("suit", "8") +seven = Card("suit", "7") +six = Card("suit", "6") +five = Card("suit", "5") +four = Card("suit", "4") + + +@pytest.mark.parametrize( + "players, nums_steps", + [ + ( + [ + Player(strategy=Optimal1()), + Player(strategy=Aggressive()), + Player(strategy=Optimal2()), + Player(), + ], + list(range(1, 9)), + ) + ], +) +def test_game_states(players: list[Player], nums_steps: list[int]) -> None: + """Test that the state of the game changes depending on the steps played.""" + states = [] + for num_step in nums_steps: + game = Game(players) + game.play_steps(num_step) + states.append(game._round_state) + + assert states == [ + GameStates.START, + GameStates.PLACE_BETS, + GameStates.DEALER_START, + GameStates.TOOK_CARDS, + GameStates.DEALER_SECOND_CARD, + GameStates.DEALER_PLAY, + GameStates.RESULTS, + GameStates.END, + ] + + +@pytest.mark.parametrize( + "cards1, cards2, expect_score1, expect_score2", + [ + ([A, K], [J, six], 21, 16), + ([nine, ten], [A, A], 19, 12), + ], +) +def test_players_hands( + cards1: list[Card], + cards2: list[Card], + expect_score1: int, + expect_score2: int, +) -> None: + """Test of whether the score in the hand are correctly calculated.""" + player_hand1 = Hand() + player_hand2 = Hand() + for card in cards1: + player_hand1.add_card(card) + + assert player_hand1.get_score() == expect_score1 + + for card in cards2: + player_hand2.add_card(card) + + assert player_hand2.get_score() == expect_score2 + + # Test hand data-descriptor is working correctly + assert player_hand1.get_cards() != player_hand2.get_cards() + + +def test_players_chips() -> None: + """Test that the score increases and decreases correctly.""" + players = [ + Player(strategy=Optimal1()), + Player(strategy=Aggressive()), + Player(strategy=Optimal2()), + Player(), + ] + game = Game(players) + game.play_steps() + + for player in players: + delta_chips = 0.0 + for hand in game._desk.hands[player]: + first_bet = player.strategy.first_bet + if hand._state is HandStates.LOSE: + if hand.tripled_bet: + delta_chips -= first_bet * 3 + elif hand.double_bet: + delta_chips -= first_bet * 2 + else: + delta_chips -= first_bet + elif hand._state is HandStates.WIN: + if hand.tripled_bet: + delta_chips += first_bet * 3 + elif hand.double_bet: + delta_chips += first_bet * 2 + else: + delta_chips += first_bet + elif hand._state is HandStates.BLACKJACK: + dealer_hand = game._desk.dealer.hand + first_card = dealer_hand.get_card(0) + if not (player.strategy.even_money and first_card.name == "A") and ( + not game._desk.dealer.hand._state is HandStates.BLACKJACK + ): + delta_chips += 1.5 * first_bet + assert player._chips == 100 + int(delta_chips) From d2a1a6c6f7e65f7e48feb77ab70d6bd634432859 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A1=D0=BE=D1=84=D0=B8=D1=8F=20=D0=A5=D1=80=D0=B8=D1=81?= =?UTF-8?q?=D0=B0=D0=BD=D0=BA=D0=BE=D0=B2=D0=B0?= <132402521+sssoneta@users.noreply.github.com> Date: Fri, 25 Apr 2025 01:49:34 +0300 Subject: [PATCH 2/4] dz5 --- project/UML.png | Bin 314378 -> 96760 bytes project/example/example.py | 20 +- project/example/example.txt | 206 ++++---------- project/scr/desk.py | 179 ++++++++---- project/scr/game.py | 525 +++++++++++++----------------------- project/scr/objects.py | 429 +++++++++-------------------- project/scr/persons.py | 139 ++++++---- project/scr/strategies.py | 321 ++++++++-------------- scripts/test_blackjak.py | 224 ++++++++------- 9 files changed, 792 insertions(+), 1251 deletions(-) diff --git a/project/UML.png b/project/UML.png index b7af98de2a4cf3288222499913cf51e201819020..930535d759f288114916a3265668c57e6a453de3 100644 GIT binary patch literal 96760 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%0De;a840l0eM;ww$w6xuFp{V_V!7abz= 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 literal 314378 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

Sy^lHsobd|h{ZRj0=^^d* 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 None`: - Issues a card from the dealer's deck to the target hand. - - `place_first_bets() -> None`: - Players place their first bets in the amount specified in the strategy. - - `split(player: Player, id_hand: int) -> None`: - The method is called if the player has chosen split. + Attributes: + players (List[BlackjackPlayer]): List of active players + dealer (BlackjackDealer): The game dealer + player_hands (Dict[BlackjackPlayer, List[PlayerHand]]): Active hands per player + """ - `check_bet(id_player: int, bet: int) -> bool`: - Checks if the player has enough chips to bet. + def __init__(self, players: List[BlackjackPlayer], num_decks: int = 6): + """Initialize a new blackjack table""" + self.players = players + self.dealer = BlackjackDealer(num_decks) + self.player_hands: Dict[BlackjackPlayer, List[PlayerHand]] = {} + self._initialize_table() - `next() -> None`: - Sets the starting parameters for the table. + def _initialize_table(self) -> None: + """Prepare the table for a new round""" + self.dealer.new_round() + for player in self.players: + player.clear_hands() + new_hand = PlayerHand([]) + player.add_hand(new_hand) + self.player_hands[player] = [new_hand] - """ + def deal_card_to_hand(self, hand: PlayerHand, face_up: bool = True) -> None: + """ + Deal a card from the dealer's shoe to a specific hand - def __init__(self, players: list[Player], dealer_num_deck: int) -> None: - """Initializing a Desk object.""" - self.players = players - self.dealer = Dealer(dealer_num_deck) - self.hands: dict[Player, list[Hand]] = {} + Args: + hand: The target hand to receive the card + face_up: Whether the card should be dealt face up + """ + card = self.dealer.deal_card(face_up) + hand.add_card(card) - def dealer_give_card(self, target_hand: Hand) -> None: + def place_initial_bets(self) -> None: + """Handle initial betting round for all players""" + for player in self.players: + if player.can_place_bet(player.strategy.min_bet): + bet_amount = player.strategy.min_bet + player.place_bet(bet_amount) + # Initialize bet for first hand + if self.player_hands[player]: + self.player_hands[player][0].wager = bet_amount + else: + # Mark player as out if can't place minimum bet + if self.player_hands[player]: + self.player_hands[player][0].status = GameResult.LOSE + + def split_hand(self, player: BlackjackPlayer, hand_index: int = 0) -> None: """ - Issues a card from the dealer's deck to the target hand. + Split a player's hand into two separate hands Args: - target_hand (Hand): the hand to add the card to. + player: The player requesting the split + hand_index: Index of the hand to split """ - card = self.dealer.give_card() - target_hand.add_card(card) - - def place_first_bets(self) -> None: - """Players place their first bets in the amount specified in the strategy.""" - for id_player, player in enumerate(self.players): - bet = player.strategy.first_bet - if not player.check_bet(bet): - self.hands[player][0].out() - continue - self.hands[player][0].set_first_bet(bet) - player.diff_chips(-bet) - - def split(self, player: Player, id_hand: int) -> None: + if hand_index >= len(self.player_hands[player]): + return + + original_hand = self.player_hands[player][hand_index] + + # Verify split is possible + if len(original_hand.cards) != 2 or \ + original_hand.cards[0].rank != original_hand.cards[1].rank: + return + + # Create two new hands from the split + new_hand1, new_hand2 = original_hand.split_hand() + + # Place additional bet + if player.can_place_bet(original_hand.wager): + player.place_bet(original_hand.wager) + else: + return + + # Deal cards to new hands + self.deal_card_to_hand(new_hand1) + self.deal_card_to_hand(new_hand2) + + # Replace original hand with split hands + self.player_hands[player].pop(hand_index) + self.player_hands[player].extend([new_hand1, new_hand2]) + player.active_hands = self.player_hands[player] + + def start_new_round(self) -> None: + """Reset the table for a new round of play""" + self._initialize_table() + + # Deal initial cards: 2 to each player, 1 to dealer + 1 face down + for _ in range(2): + for player in self.players: + for hand in self.player_hands[player]: + self.deal_card_to_hand(hand) + + # Dealer gets one face up and one face down card + self.deal_card_to_hand(self.dealer.hand) + self.deal_card_to_hand(self.dealer.hand, face_up=False) + + def player_action(self, player: BlackjackPlayer, action: str, hand_index: int = 0) -> None: """ - The method is called if the player has chosen split. + Process player action for specific hand Args: - player (Player): the player who chose the split. - id_hand (int): the number of the hand for which the split is selected. + player: The player taking action + action: Action to perform (hit, stand, double, split, etc.) + hand_index: Index of the hand to act upon """ - hand = self.hands[player][id_hand] + if hand_index >= len(self.player_hands[player]): + return - split_hand_1, split_hand_2 = hand.split() - self.dealer_give_card(split_hand_1) - self.dealer_give_card(split_hand_2) + current_hand = self.player_hands[player][hand_index] - self.hands[player][id_hand] = split_hand_1 - self.hands[player].append(split_hand_2) + match action: + case "hit": + self.deal_card_to_hand(current_hand) + if current_hand.calculate_value() == -1: # Bust + current_hand.status = GameResult.BUST - def next(self) -> None: - """Sets the starting parameters for the table.""" - self.dealer.restart() - for player in self.players: - self.hands[player] = [Hand()] + case "stand": + current_hand.status = GameResult.ACTIVE + + case "double": + if player.can_place_bet(current_hand.wager): + player.place_bet(current_hand.wager) + current_hand.double_wager() + self.deal_card_to_hand(current_hand) + current_hand.status = GameResult.ACTIVE + + case "split": + self.split_hand(player, hand_index) + + case "surrender": + player.adjust_bankroll(current_hand.wager // 2) + current_hand.surrender() \ No newline at end of file diff --git a/project/scr/game.py b/project/scr/game.py index 5e77101c..d895b221 100644 --- a/project/scr/game.py +++ b/project/scr/game.py @@ -1,368 +1,209 @@ -from project.scr.objects import HandStates, Card, Hand -from project.scr.persons import Player -from project.scr.strategies import Action -from project.scr.desk import Desk -from enum import Enum - - -def show_hand_player(hand: Hand, id_player: int) -> None: - print(f"Player {id_player + 1}'s hand:") - hand.show_hand() - - -class GameStates(Enum): - """Enum to indicate the state of the game.""" - - START = "The round has begun" - PLACE_BETS = "Bets have been placed" - DEALER_START = "The dealer took a closed and an open card" - TOOK_CARDS = "The players took the cards" - DEALER_SECOND_CARD = "The dealer opens the second card" - DEALER_PLAY = "The dealer takes the cards" - RESULTS = "The results of the game are summarized" - END = "The round is over" - - -class Game: +from enum import Enum, auto +from typing import List, Dict +from project.scr.objects import PlayerHand, PlayingCard, GameResult +from project.scr.persons import BlackjackPlayer, BlackjackDealer +from project.scr.strategies import PlayerAction, BaseStrategy +from project.scr.desk import BlackjackTable + + +class RoundPhase(Enum): + """Represents different phases of a blackjack round""" + INITIALIZATION = auto() + BETTING = auto() + INITIAL_DEAL = auto() + PLAYER_TURNS = auto() + DEALER_TURN = auto() + PAYOUTS = auto() + COMPLETION = auto() + + +class BlackjackGame: """ - The controller class for the game table. - It contains information about the players, - the current state of the game and the game table. - - Methods: - ------- - `_show_state() -> None`: - The method of displaying information depending on the current state of the game. - - `_start_game() -> None`: - Sets the initial parameters before starting the game. - - `_place_bets() -> None`: - The players place their first bets. - - `_dealer_start() -> None`: - The dealer starts the game. - - `_take_cards() -> None`: - The players take the cards according to the strategy. - - `_dealer_second_card() -> None`: - The dealer opens the second card. - - `_dealer_play() -> None`: - The dealer takes the missing cards. - - `_round_results() -> None`: - The results of the game are summarized. - - `_end_round() -> None`: - Completes the round. - - `_play_with_player(id_player: int, dealer_card: Card) -> bool`: - Player takes the cards depending on the strategy. - - `get_state() -> GameStates`: - Returns the game state. - - `play_steps(num_steps: int = 8) -> None`: - Performs the first n steps of the game. + Controls the flow of a blackjack game with multiple players and rounds. - 'play_round_with_show_states(self) -> None' - Starts a full round and outputs information to the console at each stage. + Attributes: + table (BlackjackTable): The game table with players and dealer + current_phase (RoundPhase): Current game phase + round_number (int): Current round count """ - def __init__(self, players: list[Player], dealer_num_deck: int = 1) -> None: - """Initializing a Game object""" - self._desk = Desk(players, dealer_num_deck) - self._num_round = 0 - self._round_state = GameStates.START - - def _show_state(self) -> None: - """The method of displaying information depending on the current state of the game.""" - print(self._round_state.value) - match self._round_state: - case GameStates.START: - print("Round:", self._num_round) - case GameStates.PLACE_BETS: - for id_player, player in enumerate(self._desk.players): - self._desk.hands[player][0].show_bet(id_player) - case GameStates.TOOK_CARDS: - for id_player, player in enumerate(self._desk.players): - if self._desk.hands[player][0].get_state() is HandStates.OUT: - continue - for hand in self._desk.hands[player]: - show_hand_player(hand, id_player) - hand.show_history() - print() - case GameStates.RESULTS: - for id_player, player in enumerate(self._desk.players): - if self._desk.hands[player][0].get_state() is HandStates.OUT: - continue - print(f"The result of player {id_player + 1}") - for hand in self._desk.hands[player]: - show_hand_player(hand, id_player) - hand.show_history() - hand.show_state() - print() - case GameStates.DEALER_START: - print("The dealer's first card:") - print(self._desk.dealer.hand.get_card(0)) - case GameStates.DEALER_PLAY: - self._desk.dealer.show_hand() - case GameStates.DEALER_SECOND_CARD: - self._desk.dealer.show_hand() - print("\n") - - def _start_game(self) -> None: - """Sets the initial parameters before starting the game.""" - self._round_state = GameStates.START - self._num_round += 1 - self._desk.next() - - def _place_bets(self) -> None: - """The players place their first bets.""" - self._round_state = GameStates.PLACE_BETS - self._desk.place_first_bets() - - def _dealer_start(self) -> None: - """The dealer took a closed and an open card.""" - self._round_state = GameStates.DEALER_START - self._desk.dealer_give_card(self._desk.dealer.hand) - self._desk.dealer_give_card(self._desk.dealer.hand) - - def _take_cards(self) -> None: - """The players take the cards according to the strategy.""" - self._round_state = GameStates.TOOK_CARDS - dealer_card = self._desk.dealer.hand.get_card(0) - for id_player, player in enumerate(self._desk.players): - player_hand = self._desk.hands[player][0] - if not player_hand.in_playing: - continue - self._desk.dealer_give_card(self._desk.hands[player][0]) - self._desk.dealer_give_card(self._desk.hands[player][0]) - - if player_hand.check_blackjack(): - player_hand._state = HandStates.BLACKJACK - if ( - player_hand.get_state() is HandStates.BLACKJACK - and not self._desk.dealer.hand.get_card(0).name - in { - "10", - "J", - "Q", - "K", - "A", - } - ): - player.diff_chips(int(player_hand.get_bet() * 2.5)) - player_hand.game_over() - continue - elif ( - player_hand.get_state() is HandStates.BLACKJACK - and self._desk.dealer.hand.get_card(0).name == "A" - ): - if player.strategy.even_money: - player_hand.even_money() - player.diff_chips(int(player_hand.get_bet() * 2)) - player_hand.game_over() + def __init__(self, players: List[BlackjackPlayer], num_decks: int = 6): + """Initialize a new blackjack game session""" + self.table = BlackjackTable(players, num_decks) + self.current_phase = RoundPhase.INITIALIZATION + self.round_number = 0 + self._setup_observers() + + def _setup_observers(self) -> None: + """Setup game state observers for UI updates""" + self.observers = [] + + def _notify_observers(self) -> None: + """Notify all observers about game state changes""" + for observer in self.observers: + observer.update(self) + + def start_new_round(self) -> None: + """Begin a new round of blackjack""" + self.round_number += 1 + self.current_phase = RoundPhase.INITIALIZATION + self.table.start_new_round() + self._notify_observers() + + def process_betting_phase(self) -> None: + """Handle the betting phase of the round""" + self.current_phase = RoundPhase.BETTING + self.table.place_initial_bets() + self._notify_observers() + + def process_initial_deal(self) -> None: + """Perform the initial card deal""" + self.current_phase = RoundPhase.INITIAL_DEAL + self._notify_observers() + + def process_player_turns(self) -> None: + """Handle all player decisions""" + self.current_phase = RoundPhase.PLAYER_TURNS + dealer_upcard = self.table.dealer.hand.cards[0] + + for player in self.table.players: + for i, hand in enumerate(self.table.player_hands[player]): + if hand.status != GameResult.ACTIVE: continue - while self._play_with_player(id_player, dealer_card): - pass + while True: + action = player.strategy.decide_action(hand, dealer_upcard) - def _dealer_second_card(self) -> None: - """The dealer opens the second card.""" - self._round_state = GameStates.DEALER_SECOND_CARD - for (id_player, player) in enumerate(self._desk.players): - for id_hand, hand in enumerate(self._desk.hands[player]): - if not hand.in_playing: - continue - - if ( - hand.get_state() is HandStates.BLACKJACK - and not self._desk.dealer.hand.get_state() is HandStates.BLACKJACK - ): - player.diff_chips(int(hand.get_bet() * 2.5)) - hand.game_over() - elif ( - not hand.get_state() is HandStates.BLACKJACK - and self._desk.dealer.hand.get_state() is HandStates.BLACKJACK - ): - hand._state = HandStates.LOSE - hand.game_over() - - def _dealer_play(self) -> None: - """The dealer takes the missing cards.""" - self._round_state = GameStates.DEALER_PLAY - while True: - dealer_score = self._desk.dealer.hand.get_score() - if dealer_score == -1 or dealer_score >= 17: - break - self._desk.dealer_give_card(self._desk.dealer.hand) - - def _round_results(self) -> None: - """The results of the game are summarized.""" - self._round_state = GameStates.RESULTS - dealer_score = self._desk.dealer.hand.get_score() - for (id_player, player) in enumerate(self._desk.players): - for id_hand, hand in enumerate(self._desk.hands[player]): - if not hand.in_playing: - continue - - hand_score = hand.get_score() - - if hand_score > dealer_score: - hand._state = HandStates.WIN - player.diff_chips(hand.get_bet() * 2) - hand.game_over() - - elif hand_score == dealer_score: - hand._state = HandStates.DRAWN_GAME - player.diff_chips(hand.get_bet()) - hand.game_over() - else: - hand._state = HandStates.LOSE - hand.game_over() - - def _end_round(self) -> None: - """Completes the round.""" - self._round_state = GameStates.END - - def _play_with_player(self, id_player: int, dealer_card: Card) -> bool: - """ - Player takes the cards depending on the strategy. - - Args: - id_player (int): the index of the player in the list of players. - dealer_card (Card): dealer's open card. - - Returns: - result (bool): a flag indicating that the player has not finished the game. - """ - target_player = self._desk.players[id_player] - for id_hand, hand in enumerate(self._desk.hands[target_player]): - if not hand.in_playing or hand.get_history()[-1] == "pass": - continue - while True: - score = hand.get_score() - if score == -1: - hand._state = HandStates.LOSE - hand.game_over() - break - elif score == 21: - break - - action = target_player.strategy.play(hand, dealer_card) - match action: - case Action.PASS: - hand.action_pass() + if action == PlayerAction.STAND: break - case Action.TAKE: - self._desk.dealer_give_card(hand) + elif action == PlayerAction.HIT: + self.table.deal_card_to_hand(hand) + if hand.calculate_value() == -1: # Bust + hand.status = GameResult.BUST + break - case Action.SPLIT: - if not target_player.check_bet(hand.get_bet()): - hand.action_pass() + elif action == PlayerAction.DOUBLE: + if len(hand.cards) == 2 and player.can_place_bet(hand.wager): + player.place_bet(hand.wager) + hand.double_wager() + self.table.deal_card_to_hand(hand) break - target_player.diff_chips(-hand.get_bet()) - self._desk.split(target_player, id_hand) - return True - case Action.DOUBLE: - if not target_player.check_bet(hand.get_bet()): - self._desk.dealer_give_card(hand) + elif action == PlayerAction.SPLIT: + if len(hand.cards) == 2 and hand.cards[0].rank == hand.cards[1].rank: + self.table.split_hand(player, i) + # Need to re-evaluate after split continue - target_player.diff_chips(-hand.get_bet()) - hand.double_down() - self._desk.dealer_give_card(hand) - - case Action.TRIPLING: - if not hand.double_bet: - raise ValueError( - "Before tripling the bets, you need to double them." - ) - if not target_player.check_bet(hand.get_bet() // 2): - self._desk.dealer_give_card(hand) - continue - target_player.diff_chips(-hand.get_bet() // 2) - hand.tripling_bet() - case Action.SURRENDER: - target_player.diff_chips(hand.get_bet() // 2) - hand._state = HandStates.LOSE - hand.game_over() - break - return False - - def get_state(self) -> GameStates: - """Returns the game state.""" - return self._round_state - - def play_steps(self, num_steps: int = 8) -> None: - """Performs the first number steps of the game.""" - if not num_steps: - return - - self._start_game() - num_steps -= 1 - if not num_steps: - return - - self._place_bets() - num_steps -= 1 - if not num_steps: - return - - self._dealer_start() - num_steps -= 1 - if not num_steps: - return - - self._take_cards() - num_steps -= 1 - if not num_steps: - return + elif action == PlayerAction.SURRENDER: + if len(hand.cards) == 2: + player.adjust_bankroll(hand.wager // 2) + hand.status = GameResult.LOSE + break + self._notify_observers() - self._dealer_second_card() - num_steps -= 1 - if not num_steps: - return + def process_dealer_turn(self) -> None: + """Handle the dealer's play""" + self.current_phase = RoundPhase.DEALER_TURN + dealer_hand = self.table.dealer.hand - self._dealer_play() - num_steps -= 1 - if not num_steps: - return + # Reveal dealer's hole card + if len(dealer_hand.cards) > 1: + dealer_hand.cards[1].face_up = True - self._round_results() - num_steps -= 1 - if not num_steps: - return + # Dealer draws according to rules + while dealer_hand.calculate_value() not in (-1, 17, 18, 19, 20, 21): + self.table.deal_card_to_hand(dealer_hand) - self._end_round() + dealer_hand.status = GameResult.WIN if dealer_hand.calculate_value() != -1 else GameResult.BUST + self._notify_observers() - def play_round_with_show_states(self) -> None: - """Performs a full round and outputs information to the console at each stage.""" - self._start_game() - self._show_state() + def process_payouts(self) -> None: + """Calculate and distribute winnings""" + self.current_phase = RoundPhase.PAYOUTS + dealer_value = self.table.dealer.hand.calculate_value() + dealer_busted = dealer_value == -1 - self._place_bets() - self._show_state() + for player in self.table.players: + for hand in self.table.player_hands[player]: + if hand.status != GameResult.ACTIVE: + continue - self._dealer_start() - self._show_state() + player_value = hand.calculate_value() - self._take_cards() - self._show_state() + if player_value == -1: # Player busted + hand.status = GameResult.BUST - self._dealer_second_card() - self._show_state() + elif len(hand.cards) == 2 and player_value == 21: # Blackjack + hand.status = GameResult.BLACKJACK + player.adjust_bankroll(int(hand.wager * 2.5)) - self._dealer_play() - self._show_state() + elif dealer_busted or player_value > dealer_value: + hand.status = GameResult.WIN + player.adjust_bankroll(hand.wager * 2) - self._round_results() - self._show_state() + elif player_value == dealer_value: + hand.status = GameResult.PUSH + player.adjust_bankroll(hand.wager) - self._end_round() - self._show_state() + else: + hand.status = GameResult.LOSE + self._notify_observers() + + def complete_round(self) -> None: + """Clean up after round completion""" + self.current_phase = RoundPhase.COMPLETION + self._notify_observers() + + def play_full_round(self) -> None: + """Execute a complete round from start to finish""" + self.start_new_round() + self.process_betting_phase() + self.process_initial_deal() + self.process_player_turns() + self.process_dealer_turn() + self.process_payouts() + self.complete_round() + + def add_observer(self, observer) -> None: + """Add a game state observer""" + self.observers.append(observer) + + +class GameObserver: + """Base class for game state observers""" + + def update(self, game: BlackjackGame) -> None: + """Handle game state updates""" + self._display_round_info(game) + self._display_phase_info(game.current_phase) + self._display_table_state(game.table) + + def _display_round_info(self, game: BlackjackGame) -> None: + print(f"\n=== Round {game.round_number} ===") + + def _display_phase_info(self, phase: RoundPhase) -> None: + phase_descriptions = { + RoundPhase.INITIALIZATION: "Setting up new round...", + RoundPhase.BETTING: "Players placing bets...", + RoundPhase.INITIAL_DEAL: "Dealing initial cards...", + RoundPhase.PLAYER_TURNS: "Players making decisions...", + RoundPhase.DEALER_TURN: "Dealer playing hand...", + RoundPhase.PAYOUTS: "Calculating results...", + RoundPhase.COMPLETION: "Round complete!" + } + print(phase_descriptions.get(phase, "")) + + def _display_table_state(self, table: BlackjackTable) -> None: + # Display dealer's hand + print("\nDealer's Hand:") + table.dealer.hand.display() + + # Display each player's hands + for i, player in enumerate(table.players): + print(f"\nPlayer {i + 1} (Bankroll: {player.bankroll}):") + for j, hand in enumerate(table.player_hands[player]): + print(f" Hand {j + 1} (Bet: {hand.wager}):") + hand.display() + print(f" Status: {hand.status.name}") \ No newline at end of file diff --git a/project/scr/objects.py b/project/scr/objects.py index 411adcac..deea19e8 100644 --- a/project/scr/objects.py +++ b/project/scr/objects.py @@ -1,325 +1,136 @@ -import random +from random import SystemRandom from itertools import product -from enum import Enum -from typing import Any +from enum import Enum, auto +from typing import List, Dict, Tuple, Optional, Union +from dataclasses import dataclass -class Card: - """ - A class containing information about the value of the card. +class CardSuit(Enum): + CLUBS = auto() + DIAMONDS = auto() + HEARTS = auto() + SPADES = auto() - Methods: - ------- - `__str__() -> str`: - Returns a string representation of the card. - """ + def __str__(self): + return { + CardSuit.CLUBS: "♣", + CardSuit.DIAMONDS: "♦", + CardSuit.HEARTS: "♥", + CardSuit.SPADES: "♠" + }[self] - def __init__(self, suit: str, name: str | int) -> None: - """Initializing a Card object""" - self.suit = suit - self.name = str(name) - def __str__(self) -> str: - """Returns a string representation of the card.""" - return f"{self.name} of {self.suit}" - - -class Deck: - """ - A deck of cards. - - Methods: - ------- - `shuffle() -> None`: - Shuffles the deck of cards. - - `pull() -> Card`: - Removes and returns the card at the beginning of the deck. - - """ - - def __init__(self) -> None: - """Initializing a Deck object""" - self._cards = [ - Card(card[0], card[1]) - for card in product( - ["Spades", "Hearts", "Diamonds", "Clubs"], - list(range(2, 11)) + ["J", "Q", "K", "A"], - ) - ] - self.shuffle() - - def shuffle(self) -> None: - """Shuffles the deck of cards.""" - random.shuffle(self._cards) - - def pull(self) -> Card: - """Removes and returns the card at the beginning of the deck.""" - return self._cards.pop(0) - - -class Cards: - """ - The data-descriptor class for storing cards, scores, and game history. - """ - - def __init__(self) -> None: - self._data: dict[Hand, dict[str, Any]] = {} - - def __get__(self, instance: Any, owner: Any) -> Any: - if instance is None: - return self - if instance not in self._data: - self._data[instance] = {"cards": [], "score": 0, "history": []} - return self._data[instance] +class PlayingCard: + """Represents a single playing card with suit and rank""" - def __set__(self, instance: Any, value: Any) -> None: - self._data[instance] = value + def __init__(self, suit: CardSuit, rank: Union[int, str]): + self._suit = suit + self._rank = str(rank).upper() + @property + def suit(self) -> CardSuit: + return self._suit -class HandStates(Enum): - """Enum to indicate the state of the hand.""" + @property + def rank(self) -> str: + return self._rank - DEFAULT = "The game is on" - WIN = "Winning hand" - LOSE = "Losing hand" - BLACKJACK = "Blackjack" - DRAWN_GAME = "Equal score" - OUT = "Out of the game" + def __repr__(self) -> str: + return f"{self.rank}{str(self.suit)}" + def __str__(self) -> str: + return f"{self.rank} of {self.suit.name.capitalize()}" -class Hand: - """ - The controller class above the Cards data-descriptor. - The class responsible for the current state of the hand, the bet and the cards. - - Methods: - ------- - `game_over() -> None`: - Resets the bet and withdraws the hand from the game. - - 'out() -> None': - Switches the hand to an out-of-play state. - - `double_down() -> None`: - Doubles the bet. - - `tripling_bet() -> None`: - Triples the bet. - - 'split() -> tuple["Hand", "Hand"]': - The method for calling the split hand. - - 'action_pass() -> None': - Performs the pass action - - 'even_money() -> None': - Performs the even money action - - `add_card(card: Card) -> None`: - Adds a card to his hand and recalculates the scores. - - `calculate_score() -> None`: - Recalculate the scores. - - 'set_first_bet(first_bet: int) -> None': - If there is no first bid, then sets it. - - `check_blackjack() -> bool`: - Check if there is a blackjack on this hand. - - `get_card(id_card: int) -> Any`: - Returns the card with the number starting from the first received one. - `get_scores() -> Any`: - Returns the scores. +class CardDeck: + """Implements a standard 52-card deck with advanced features""" - 'get_cards() -> Any': - Returns the cards. + def __init__(self, num_decks: int = 1): + self._rng = SystemRandom() + self._cards = self._initialize_deck(num_decks) + self.shuffle_cards() - 'get_history() -> Any': - Returns the history. + def _initialize_deck(self, num_decks: int) -> List[PlayingCard]: + ranks = [str(n) for n in range(2, 11)] + ['J', 'Q', 'K', 'A'] + return [ + PlayingCard(suit, rank) + for _ in range(num_decks) + for suit, rank in product(CardSuit, ranks) + ] - 'get_bet() -> int': - Returns the bet. - - 'get_state() -> HandStates': - Returns the hand state. - - 'show_history() -> None': - Displays the console history of the player's actions. - - 'show_hand(self) -> None': - Displays the cards on your hand in the console. - - 'show_bet(id_player: int) -> None': - Displays the current bet in the console. - - 'show_state(self) -> None': - Displays the current hand status in the console. - """ - - _hand = Cards() - - def __init__(self) -> None: - """Initializing a Deck object""" - self._bet = 0 - self.in_playing = True - self.double_bet = False - self.tripled_bet = False - self._state = HandStates.DEFAULT - - def game_over(self) -> None: - """Resets the bet and withdraws the hand from the game.""" - self._bet = 0 - self.in_playing = False - - def out(self) -> None: - """Switches the hand to an out-of-play state.""" - self.game_over() - self._state = HandStates.OUT - - def double_down(self) -> None: - """Doubles the bet.""" - self._bet *= 2 - self.double_bet = True - self._hand["history"].append("double down") - - def tripling_bet(self) -> None: - """Triples the bet.""" - self._bet += int(self._bet // 2) - self.tripled_bet = True - self._hand["history"].append("tripling bet") - - def split(self) -> tuple["Hand", "Hand"]: - """ - The method for calling the split hand. - - Returns: - result ("Hand", "Hand"): two hands after the split. - """ - bet = self._bet - - split_hand_1 = Hand() - split_hand_1._hand["history"] = ["split"] - split_hand_1._bet = bet - split_hand_1.add_card(self.get_card(0)) - - split_hand_2 = Hand() - split_hand_2._hand["history"] = ["split"] - split_hand_2._bet = bet - split_hand_2.add_card(self.get_card(1)) - return split_hand_1, split_hand_2 - - def action_pass(self) -> None: - """Performs the pass action""" - self._hand["history"].append("pass") - - def even_money(self) -> None: - """Performs the even money action""" - self._hand["history"].append("even money") - - def add_card(self, card: Card) -> None: - """ - Adds a card to his hand and recalculate the scores. - - Args: - card (Card): the card that was added to the hand. - """ - self._hand["cards"].append(card) - self.calculate_score() - self._hand["history"].append("add card") - - def calculate_score(self) -> None: - """Recalculate the scores.""" - scores = {0} - for card in self._hand["cards"]: - match card.name: - case "A": - scores = set(map(lambda x: x + 1, scores)) - scores.update(set(map(lambda x: x + 10, scores))) - case "K" | "Q" | "J" | "10": - scores = set(map(lambda x: x + 10, scores)) - case _: - scores = set(map(lambda x: x + int(card.name), scores)) - filter_scores = list(filter(lambda x: x <= 21, scores)) - if len(filter_scores) == 0: - self._hand["score"] = -1 - else: - self._hand["score"] = max(filter_scores) - - def set_first_bet(self, first_bet: int) -> None: - """If there is no first bid, then sets it.""" - if self._bet == 0: - self._bet = first_bet - - def check_blackjack(self) -> bool: - """ - Check if there is a blackjack on this hand. - - Returns: - result (bool): is blackjack - """ - return 21 == self._hand["score"] and len(self._hand["cards"]) == 2 - - def get_card(self, id_card: int) -> Any: - """ - Returns the card with the number starting from the first received one. - - Args: - id_card (int): index of the card in hand. - - Returns: - result (Any): card is under the desired index. - """ - return self._hand["cards"][id_card] - - def get_score(self) -> Any: - """Returns the scores""" - return self._hand["score"] - - def get_cards(self) -> Any: - """Returns the cards""" - return self._hand["cards"] - - def get_history(self) -> Any: - """Returns the history.""" - return self._hand["history"] - - def get_bet(self) -> int: - """Returns the bet.""" - return self._bet - - def get_state(self) -> HandStates: - """Returns the hand state.""" - return self._state - - def show_history(self) -> None: - """Displays the console history of the player's actions.""" - print("History of actions:") - print(self._hand["history"], sep=", ") - - def show_hand(self) -> None: - """Displays the cards on your hand in the console.""" - print("Hand:", end=" ") - for card in self._hand["cards"]: - print(card, end="; ") - print() - - print("Score:", end=" ") - if self._hand["score"] == -1: - print("bust") - else: - print(self._hand["score"]) - - def show_bet(self, id_player: int) -> None: - """Displays the current bet in the console.""" - print(f"Player's {id_player + 1} bet:", end=" ") - if self._state is HandStates.OUT: - print("not enough chips") - else: - print(self._bet) - - def show_state(self) -> None: - """Displays the current hand status in the console.""" - print("Hand condition:", self._state.value) + def shuffle_cards(self) -> None: + """Performs cryptographic-quality shuffle""" + self._rng.shuffle(self._cards) + + def deal_card(self) -> PlayingCard: + """Removes and returns the top card from deck""" + if not self._cards: + raise ValueError("No cards remaining in deck") + return self._cards.pop() + + @property + def remaining(self) -> int: + return len(self._cards) + + +class GameResult(Enum): + ACTIVE = auto() + WIN = auto() + LOSE = auto() + BLACKJACK = auto() + PUSH = auto() + BUST = auto() + + +@dataclass +class PlayerHand: + cards: List[PlayingCard] + wager: int = 0 + is_active: bool = True + status: GameResult = GameResult.ACTIVE + + def add_card(self, card: PlayingCard) -> None: + self.cards.append(card) + + def calculate_value(self) -> int: + total = 0 + aces = 0 + + for card in self.cards: + if card.rank.isdigit(): + total += int(card.rank) + elif card.rank in ('J', 'Q', 'K'): + total += 10 + else: # Ace + total += 11 + aces += 1 + + while total > 21 and aces: + total -= 10 + aces -= 1 + + return total if total <= 21 else -1 + + def is_blackjack(self) -> bool: + return len(self.cards) == 2 and self.calculate_value() == 21 + + def double_wager(self) -> None: + self.wager *= 2 + + def surrender(self) -> None: + self.is_active = False + self.status = GameResult.LOSE + + def split_hand(self) -> Tuple['PlayerHand', 'PlayerHand']: + if len(self.cards) != 2: + raise ValueError("Can only split with exactly two cards") + + hand1 = PlayerHand([self.cards[0]], self.wager) + hand2 = PlayerHand([self.cards[1]], self.wager) + return hand1, hand2 + + def display(self) -> None: + print("Current hand:") + for card in self.cards: + print(f" {card}") + print(f"Total value: {self.calculate_value()}") \ No newline at end of file diff --git a/project/scr/persons.py b/project/scr/persons.py index 235fa096..68f39d99 100644 --- a/project/scr/persons.py +++ b/project/scr/persons.py @@ -1,70 +1,101 @@ -from project.scr.objects import Deck, Hand, Card +from typing import List import random -from project.scr.strategies import Basic, Strategy +from project.scr.objects import CardDeck, PlayerHand, PlayingCard +from project.scr.strategies import BaseStrategy, ConservativeStrategy -class Player: +class BlackjackPlayer: """ - The player's class stores the number of chips and the strategy of the game. + Represents a player in blackjack game with betting capabilities and strategy. - Methods: - ------- - 'diff_chips(delta: int) -> None': - Calculates the difference of chips. - - 'check_bet(self, bet: int) -> bool': - Checks if the player has enough chips to bet. + Attributes: + strategy (BaseStrategy): The playing strategy to use + bankroll (int): Current chip count + current_bet (int): Active wager amount """ - def __init__(self, strategy: Strategy = Basic(), chips: int = 100) -> None: - """Initializing a Player object.""" - self.strategy = strategy - self._chips = chips + def __init__(self, strategy: BaseStrategy = None, initial_bankroll: int = 1000): + self.strategy = strategy or ConservativeStrategy() + self._bankroll = initial_bankroll + self.current_bet = 0 + self.active_hands: List[PlayerHand] = [] - def diff_chips(self, delta: int) -> None: - """Calculates the difference of chips.""" - self._chips += delta + def adjust_bankroll(self, amount: int) -> None: + """Modify player's chip count by specified amount""" + self._bankroll += amount - def check_bet(self, bet: int) -> bool: - """Checks if the player has enough chips to bet.""" - if bet > self._chips: - return False - return True + def can_place_bet(self, amount: int) -> bool: + """Check if player has sufficient funds for a bet""" + return 0 < amount <= self._bankroll + def place_bet(self, amount: int) -> bool: + """Attempt to place a wager, returns True if successful""" + if self.can_place_bet(amount): + self.current_bet = amount + self._bankroll -= amount + return True + return False -class Dealer: - """ - The dealer's class that stores the dealer's decks and hand. + def clear_hands(self) -> None: + """Reset all active hands for new round""" + self.active_hands = [] - Methods: - ------- - 'give_card() -> Card': - A method for extracting a card from the deck. + def add_hand(self, hand: PlayerHand) -> None: + """Add a new hand to player's active hands""" + self.active_hands.append(hand) - 'show_hand() -> None': - A method for displaying information about the dealer's hand in the console. - 'restart() -> None': - A method that returns the dealer's state to the beginning of the game. +class BlackjackDealer: + """ + Manages the dealer's operations including card dealing and game flow. + + Attributes: + shoe (List[CardDeck]): Collection of card decks in play + hand (PlayerHand): Dealer's current hand """ - def __init__(self, num_decks: int) -> None: - """Initializing a Dealer object.""" - self._num_decks = num_decks - self.hand = Hand() - self._decks = [Deck() for _ in range(num_decks)] - - def give_card(self) -> Card: - """A method for extracting a card from the deck.""" - id_deck = random.randint(0, self._num_decks - 1) - return self._decks[id_deck].pull() - - def show_hand(self) -> None: - """A method for displaying information about the dealer's hand in the console.""" - print("Dealer's Hand:") - self.hand.show_hand() - - def restart(self) -> None: - """A method that returns the dealer's state to the beginning of the game.""" - self.hand = Hand() - self._decks = [Deck() for _ in range(self._num_decks)] + def __init__(self, deck_count: int = 6): + self.shoe = self._initialize_shoe(deck_count) + self.hand: PlayerHand = None + + def _initialize_shoe(self, deck_count: int) -> List[CardDeck]: + """Create and shuffle multiple decks for the shoe""" + decks = [CardDeck() for _ in range(deck_count)] + for deck in decks: + deck.shuffle_cards() + return decks + + def deal_card(self, face_up: bool = True) -> PlayingCard: + """ + Deal a card from random deck in shoe + + Args: + face_up: Whether card should be dealt face up + + Returns: + PlayingCard: The dealt card + """ + active_deck = random.choice(self.shoe) + try: + card = active_deck.deal_card() + card.face_up = face_up + return card + except ValueError: + # Reshuffle if deck is empty + self.shoe = self._initialize_shoe(len(self.shoe)) + return self.deal_card(face_up) + + def reveal_hand(self) -> None: + """Show dealer's hand with all cards face up""" + if self.hand: + for card in self.hand.cards: + card.face_up = True + print("\nDealer's Hand:") + self.hand.display() + + def new_round(self) -> None: + """Prepare dealer for new game round""" + self.hand = PlayerHand([]) + # Check if shoe needs replenishing + if sum(deck.remaining for deck in self.shoe) < 52: + self.shoe = self._initialize_shoe(len(self.shoe)) \ No newline at end of file diff --git a/project/scr/strategies.py b/project/scr/strategies.py index 2efd860a..f15d2d9f 100644 --- a/project/scr/strategies.py +++ b/project/scr/strategies.py @@ -1,237 +1,128 @@ -from enum import Enum -from project.scr.objects import Hand -from project.scr.objects import Card +from enum import Enum, auto +from typing import Optional +from dataclasses import dataclass +from project.scr.objects import PlayerHand, PlayingCard -class Action(Enum): - """Enumeration for actions taken by the player.""" +class PlayerAction(Enum): + """Defines possible actions a player can take in blackjack""" + STAND = auto() + HIT = auto() + SPLIT = auto() + DOUBLE = auto() + TRIPLE = auto() + SURRENDER = auto() - PASS = 1 - TAKE = 2 - SPLIT = 3 - DOUBLE = 4 - TRIPLING = 5 - SURRENDER = 6 +@dataclass +class BaseStrategy: + """Abstract base class for all blackjack strategies""" + min_bet: int = 10 + use_insurance: bool = False -class Strategy: - """ - Parent class for strategies + def decide_action(self, hand: PlayerHand, dealer_upcard: PlayingCard) -> PlayerAction: + """Determine optimal action based on game state""" + raise NotImplementedError("Strategy subclass must implement decide_action") - Methods: - ______ - 'play(player_hand: Hand, dealer_card: Card) -> Action': - The method responsible for taking action in a specific situation. - """ - first_bet = 10 - even_money = False +class ConservativeStrategy(BaseStrategy): + """Basic strategy with minimal risk""" - def play(self, player_hand: Hand, dealer_card: Card) -> Action: - """ - The method responsible for taking action in a specific situation. + def __init__(self): + super().__init__(use_insurance=True) - Args: - player_hand (Hand): the hand of the player making the decision. - dealer_card (Card): the dealer's card that the players see. + def decide_action(self, hand: PlayerHand, dealer_upcard: PlayingCard) -> PlayerAction: + hand_value = hand.calculate_value() - Results: - return (Action): the action taken by the player. - """ - raise NotImplementedError("Subclass must implement play method") + if hand_value < 17: + return PlayerAction.HIT + return PlayerAction.STAND -class Basic(Strategy): - def __init__(self) -> None: - self.even_money = True +class ScientificStrategy(BaseStrategy): + """Mathematically optimal strategy based on probability""" - def play(self, player_hand: Hand, dealer_card: Card) -> Action: - score = player_hand.get_score() - if score < 17: - return Action.TAKE - return Action.PASS + def decide_action(self, hand: PlayerHand, dealer_upcard: PlayingCard) -> PlayerAction: + cards = hand.cards + hand_value = hand.calculate_value() + dealer_rank = dealer_upcard.rank + # Check for split opportunities first + split_action = self._evaluate_split(cards, dealer_rank) + if split_action: + return split_action -class Optimal1(Strategy): - def play(self, player_hand: Hand, dealer_card: Card) -> Action: - score = player_hand.get_score() - cards = player_hand.get_cards() - dealer_card_name = dealer_card.name + # Check for double down opportunities + double_action = self._evaluate_double(hand_value, dealer_rank) + if double_action and len(cards) == 2: + return double_action - split_res = check_split(cards, dealer_card.name) - if not split_res is None: - return split_res + # Handle soft totals (ace counted as 11) + if self._is_soft_hand(cards): + return self._handle_soft_hand(hand_value - 10, dealer_rank) - double_res = check_double(score, dealer_card_name) - if not double_res is None and not player_hand.double_bet: - return double_res + # Standard decision making + return self._handle_hard_hand(hand_value, dealer_rank) - if "A" in set(card.name for card in cards) and len(cards) == 2: - soft_hands = check_soft_hands(score - 10, dealer_card_name) - if not soft_hands is None: - return soft_hands + def _evaluate_split(self, cards: list[PlayingCard], dealer_rank: str) -> Optional[PlayerAction]: + if len(cards) != 2 or cards[0].rank != cards[1].rank: + return None - steady_hand = check_steady_hands(score, dealer_card_name) - if not steady_hand is None: - return steady_hand + card_rank = cards[0].rank + if card_rank in ('A', '8'): + return PlayerAction.SPLIT if dealer_rank != 'A' else PlayerAction.HIT + elif card_rank == '5': + return PlayerAction.DOUBLE + elif card_rank in ('2', '3', '7'): + return PlayerAction.SPLIT if dealer_rank in ('2', '3', '4', '5', '6', '7') else PlayerAction.HIT + elif card_rank in ('4', '6', '9'): + # Additional split logic for these ranks + pass - if score >= 17: - return Action.PASS - return Action.TAKE - - -class Aggressive(Strategy): - def __init__(self) -> None: - self.first_bet = 20 - - def play(self, player_hand: Hand, dealer_card: Card) -> Action: - score = player_hand.get_score() - dealer_card_name = dealer_card.name - - if score <= 6: - return Action.DOUBLE - - double_res = check_double(score, dealer_card_name) - if not double_res is None and player_hand.double_bet: - return Action.TRIPLING - - if score > 19: - return Action.PASS - return Action.TAKE - - -class Optimal2(Strategy): - def play(self, player_hand: Hand, dealer_card: Card) -> Action: - score = player_hand.get_score() - cards = player_hand.get_cards() - dealer_card_name = dealer_card.name - - split_res = check_split(cards, dealer_card_name) - if not split_res is None: - return split_res - - if not dealer_card_name in {"10", "J", "Q", "K", "A"}: - if score in {11, 10}: - return Action.DOUBLE - elif score <= 16: - return Action.TAKE - elif score <= 16: - return Action.TAKE - - if score >= 17: - return Action.PASS - return Action.TAKE - - -def check_split(cards: list[Card], dealer_card_name: str) -> Action | None: - """ - The function checks whether it is worth doing a split. - - Args: - cards (list[Card]): the cards are in the player's hand. - dealer_card_name (str): the dealer's open card. + return None - Returns: - result (Action | None): the action taken. - """ - if len(cards) != 2: + def _evaluate_double(self, hand_value: int, dealer_rank: str) -> Optional[PlayerAction]: + if hand_value == 9 and dealer_rank in ('2', '3', '4', '5', '6'): + return PlayerAction.DOUBLE + elif hand_value in (10, 11) and dealer_rank not in ('A', '10', 'J', 'Q', 'K'): + return PlayerAction.DOUBLE return None - if cards[1].name == cards[0].name: - match cards[0].name: - case "A" | "8": - if dealer_card_name != "A": - return Action.SPLIT - return Action.TAKE - case "5": - return Action.DOUBLE - - case "4": - if dealer_card_name in {"2", "3", "4", "5", "6"}: - return Action.SPLIT - case "9": - if dealer_card_name in {"7", "10", "11"}: - return Action.PASS - return Action.SPLIT - case "6": - if dealer_card_name in {"2", "3", "4", "5", "6"}: - return Action.SPLIT - return Action.TAKE - case "2" | "3" | "7": - if dealer_card_name in {"2", "3", "4", "5", "6", "7"}: - return Action.SPLIT - return Action.TAKE - return None - - -def check_double(score: int, dealer_card_name: str) -> Action | None: - """ - A function that checks whether it is worth doubling the bet. - - Args: - score (int): the player's current score. - dealer_card_name (str): the dealer's open card. - - Returns: - result (Action | None): the action taken. - """ - match score: - case 9: - if dealer_card_name in {"2", "3", "4", "5", "6"}: - return Action.DOUBLE - return Action.TAKE - case 10 | 11: - if dealer_card_name != "A": - if score == 11 or dealer_card_name in {"10", "J", "Q", "K"}: - return Action.DOUBLE - return Action.TAKE - return None - - -def check_soft_hands(score: int, dealer_card_name: str) -> Action | None: - """ - The decision-making function for a soft hand. - - Args: - score (int): the player's current score. - dealer_card_name (str): the dealer's open card. - - Returns: - result (Action | None): the action taken. - """ - match score: - case 3 | 4 | 5 | 6 | 7: - if dealer_card_name in {"2", "3", "4", "5", "6"}: - return Action.DOUBLE - return Action.TAKE - case 8: - if dealer_card_name in {"9", "10", "J", "Q", "K", "A"}: - return Action.TAKE - return Action.PASS - case 9 | 10 | 11: - return Action.PASS - return None - - -def check_steady_hands(score: int, dealer_card_name: str) -> Action | None: - """ - The decision-making function for a steady hand. - - Args: - score (int): the player's current score. - dealer_card_name (str): the dealer's open card. - - Returns: - result (Action | None): the action taken. - """ - match score: - case 4 | 5 | 6 | 7 | 8: - return Action.TAKE - - case 12 | 13 | 14 | 15 | 16: - if dealer_card_name in {"2", "3", "4", "5", "6"}: - return Action.PASS - return Action.TAKE - - case 17 | 18 | 19 | 20 | 21: - return Action.PASS - return None + + def _is_soft_hand(self, cards: list[PlayingCard]) -> bool: + return any(card.rank == 'A' for card in cards) and \ + sum(11 if card.rank == 'A' else + 10 if card.rank in ('J', 'Q', 'K') else + int(card.rank) for card in cards) <= 21 + + def _handle_soft_hand(self, hand_value: int, dealer_rank: str) -> PlayerAction: + if hand_value <= 7: + return PlayerAction.HIT if dealer_rank in ('9', '10', 'J', 'Q', 'K', 'A') else PlayerAction.DOUBLE + elif hand_value == 8: + return PlayerAction.STAND if dealer_rank in ('2', '3', '4', '5', '6') else PlayerAction.HIT + else: + return PlayerAction.STAND + + def _handle_hard_hand(self, hand_value: int, dealer_rank: str) -> PlayerAction: + if hand_value <= 11: + return PlayerAction.HIT + elif 12 <= hand_value <= 16: + return PlayerAction.STAND if dealer_rank in ('2', '3', '4', '5', '6') else PlayerAction.HIT + else: + return PlayerAction.STAND + + +class HighRiskStrategy(BaseStrategy): + """Aggressive betting strategy with higher risk/reward""" + + def __init__(self): + super().__init__(min_bet=20) + + def decide_action(self, hand: PlayerHand, dealer_upcard: PlayingCard) -> PlayerAction: + hand_value = hand.calculate_value() + + if hand_value <= 6: + return PlayerAction.DOUBLE + elif hand_value <= 15: + return PlayerAction.HIT + else: + return PlayerAction.STAND \ No newline at end of file diff --git a/scripts/test_blackjak.py b/scripts/test_blackjak.py index 7948a176..94c2b510 100644 --- a/scripts/test_blackjak.py +++ b/scripts/test_blackjak.py @@ -1,122 +1,114 @@ -from project.scr.persons import Player -from project.scr.objects import Card, Hand, HandStates -from project.scr.game import Game, GameStates - import pytest +from project.scr.persons import BlackjackPlayer +from project.scr.objects import PlayingCard, PlayerHand, GameResult, CardSuit +from project.scr.strategies import ScientificStrategy, HighRiskStrategy +from project.scr.game import BlackjackGame, RoundPhase +from project.scr.desk import BlackjackTable + +# Test card definitions +ACE = PlayingCard(CardSuit.SPADES, 'A') +KING = PlayingCard(CardSuit.HEARTS, 'K') +QUEEN = PlayingCard(CardSuit.DIAMONDS, 'Q') +JACK = PlayingCard(CardSuit.CLUBS, 'J') +TEN = PlayingCard(CardSuit.SPADES, '10') +NINE = PlayingCard(CardSuit.HEARTS, '9') +EIGHT = PlayingCard(CardSuit.DIAMONDS, '8') +SEVEN = PlayingCard(CardSuit.CLUBS, '7') +SIX = PlayingCard(CardSuit.SPADES, '6') +FIVE = PlayingCard(CardSuit.HEARTS, '5') +FOUR = PlayingCard(CardSuit.DIAMONDS, '4') +TWO = PlayingCard(CardSuit.CLUBS, '2') + -from project.scr.strategies import Optimal1, Aggressive, Optimal2 - -A = Card("suit", "A") -K = Card("suit", "K") -Q = Card("suit", "Q") -J = Card("suit", "J") -ten = Card("suit", "10") -nine = Card("suit", "9") -eight = Card("suit", "8") -seven = Card("suit", "7") -six = Card("suit", "6") -five = Card("suit", "5") -four = Card("suit", "4") - - -@pytest.mark.parametrize( - "players, nums_steps", - [ - ( - [ - Player(strategy=Optimal1()), - Player(strategy=Aggressive()), - Player(strategy=Optimal2()), - Player(), - ], - list(range(1, 9)), - ) - ], -) -def test_game_states(players: list[Player], nums_steps: list[int]) -> None: - """Test that the state of the game changes depending on the steps played.""" - states = [] - for num_step in nums_steps: - game = Game(players) - game.play_steps(num_step) - states.append(game._round_state) - - assert states == [ - GameStates.START, - GameStates.PLACE_BETS, - GameStates.DEALER_START, - GameStates.TOOK_CARDS, - GameStates.DEALER_SECOND_CARD, - GameStates.DEALER_PLAY, - GameStates.RESULTS, - GameStates.END, +@pytest.fixture +def test_players(): + """Fixture providing different player strategies for testing""" + return [ + BlackjackPlayer(strategy=ScientificStrategy(), initial_bankroll=1000), + BlackjackPlayer(strategy=HighRiskStrategy(), initial_bankroll=1000), + BlackjackPlayer(strategy=ScientificStrategy(), initial_bankroll=1000), + BlackjackPlayer(initial_bankroll=1000) ] -@pytest.mark.parametrize( - "cards1, cards2, expect_score1, expect_score2", - [ - ([A, K], [J, six], 21, 16), - ([nine, ten], [A, A], 19, 12), - ], -) -def test_players_hands( - cards1: list[Card], - cards2: list[Card], - expect_score1: int, - expect_score2: int, -) -> None: - """Test of whether the score in the hand are correctly calculated.""" - player_hand1 = Hand() - player_hand2 = Hand() - for card in cards1: - player_hand1.add_card(card) - - assert player_hand1.get_score() == expect_score1 - - for card in cards2: - player_hand2.add_card(card) - - assert player_hand2.get_score() == expect_score2 - - # Test hand data-descriptor is working correctly - assert player_hand1.get_cards() != player_hand2.get_cards() - - -def test_players_chips() -> None: - """Test that the score increases and decreases correctly.""" - players = [ - Player(strategy=Optimal1()), - Player(strategy=Aggressive()), - Player(strategy=Optimal2()), - Player(), +def test_game_phases(test_players): + """Verify game progresses through all expected phases""" + game = BlackjackGame(test_players) + phases = [] + + game.start_new_round() + phases.append(game.current_phase) + + game.process_betting_phase() + phases.append(game.current_phase) + + game.process_initial_deal() + phases.append(game.current_phase) + + game.process_player_turns() + phases.append(game.current_phase) + + game.process_dealer_turn() + phases.append(game.current_phase) + + game.process_payouts() + phases.append(game.current_phase) + + game.complete_round() + phases.append(game.current_phase) + + assert phases == [ + RoundPhase.INITIALIZATION, + RoundPhase.BETTING, + RoundPhase.INITIAL_DEAL, + RoundPhase.PLAYER_TURNS, + RoundPhase.DEALER_TURN, + RoundPhase.PAYOUTS, + RoundPhase.COMPLETION ] - game = Game(players) - game.play_steps() - - for player in players: - delta_chips = 0.0 - for hand in game._desk.hands[player]: - first_bet = player.strategy.first_bet - if hand._state is HandStates.LOSE: - if hand.tripled_bet: - delta_chips -= first_bet * 3 - elif hand.double_bet: - delta_chips -= first_bet * 2 - else: - delta_chips -= first_bet - elif hand._state is HandStates.WIN: - if hand.tripled_bet: - delta_chips += first_bet * 3 - elif hand.double_bet: - delta_chips += first_bet * 2 - else: - delta_chips += first_bet - elif hand._state is HandStates.BLACKJACK: - dealer_hand = game._desk.dealer.hand - first_card = dealer_hand.get_card(0) - if not (player.strategy.even_money and first_card.name == "A") and ( - not game._desk.dealer.hand._state is HandStates.BLACKJACK - ): - delta_chips += 1.5 * first_bet - assert player._chips == 100 + int(delta_chips) + + +@pytest.mark.parametrize("cards,expected_score", [ + ([ACE, KING], 21), + ([NINE, TEN], 19), + ([ACE, ACE, NINE], 21), + ([TEN, FIVE, SIX], 21), + ([TEN, TEN, FIVE], -1), + ([ACE, ACE, ACE, ACE], 14), + ([JACK, QUEEN], 20) +]) +def test_hand_scoring(cards, expected_score): + """Test hand score calculation with various card combinations""" + hand = PlayerHand(cards.copy()) + assert hand.calculate_value() == expected_score + + +def test_blackjack_detection(): + """Verify blackjack detection works correctly""" + blackjack = PlayerHand([ACE, KING]) + not_blackjack1 = PlayerHand([NINE, TEN, TWO]) + not_blackjack2 = PlayerHand([ACE, FIVE, FIVE]) + + assert blackjack.is_blackjack() is True + assert not_blackjack1.is_blackjack() is False + assert not_blackjack2.is_blackjack() is False + + +def test_bankroll_management(test_players): + """Test player bankroll changes correctly during game""" + game = BlackjackGame(test_players) + initial_bankrolls = [p._bankroll for p in test_players] + + # Play full round + game.play_full_round() + + # Verify bankroll changes + for i, player in enumerate(test_players): + if game.table.player_hands[player][0].status == GameResult.WIN: + assert player._bankroll > initial_bankrolls[i] + elif game.table.player_hands[player][0].status == GameResult.LOSE: + assert player._bankroll < initial_bankrolls[i] + elif game.table.player_hands[player][0].status == GameResult.PUSH: + assert player._bankroll == initial_bankrolls[i] + + From 6177bff17520928783a4462b6160f9b8e9b4657e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A1=D0=BE=D1=84=D0=B8=D1=8F=20=D0=A5=D1=80=D0=B8=D1=81?= =?UTF-8?q?=D0=B0=D0=BD=D0=BA=D0=BE=D0=B2=D0=B0?= <132402521+sssoneta@users.noreply.github.com> Date: Fri, 25 Apr 2025 01:56:40 +0300 Subject: [PATCH 3/4] fix formatting --- project/example/example.py | 4 +- project/example/example.txt | 2 +- project/scr/desk.py | 12 ++++-- project/scr/game.py | 14 +++++-- project/scr/objects.py | 10 ++--- project/scr/persons.py | 2 +- project/scr/strategies.py | 82 +++++++++++++++++++++++++++---------- scripts/test_blackjak.py | 51 ++++++++++++----------- 8 files changed, 113 insertions(+), 64 deletions(-) diff --git a/project/example/example.py b/project/example/example.py index f0421253..b8b1c68b 100644 --- a/project/example/example.py +++ b/project/example/example.py @@ -5,8 +5,8 @@ # Минимальный рабочий пример с одной стратегией players = [ BlackjackPlayer(strategy=ConservativeStrategy(), initial_bankroll=100), - BlackjackPlayer(initial_bankroll=100) # Использует Conservative по умолчанию + BlackjackPlayer(initial_bankroll=100), # Использует Conservative по умолчанию ] game = BlackjackGame(players=players, num_decks=1) # 1 колода для простоты -game.play_full_round() \ No newline at end of file +game.play_full_round() diff --git a/project/example/example.txt b/project/example/example.txt index d2337adb..74f1b645 100644 --- a/project/example/example.txt +++ b/project/example/example.txt @@ -79,4 +79,4 @@ Player #1: WIN (20 vs 17) Player #2: PUSH (17 vs 17) Player #3: WIN (20 vs 17) -[ ROUND 2 CONCLUDED ] \ No newline at end of file +[ ROUND 2 CONCLUDED ] diff --git a/project/scr/desk.py b/project/scr/desk.py index 4a77cb57..0c056cf9 100644 --- a/project/scr/desk.py +++ b/project/scr/desk.py @@ -68,8 +68,10 @@ def split_hand(self, player: BlackjackPlayer, hand_index: int = 0) -> None: original_hand = self.player_hands[player][hand_index] # Verify split is possible - if len(original_hand.cards) != 2 or \ - original_hand.cards[0].rank != original_hand.cards[1].rank: + if ( + len(original_hand.cards) != 2 + or original_hand.cards[0].rank != original_hand.cards[1].rank + ): return # Create two new hands from the split @@ -104,7 +106,9 @@ def start_new_round(self) -> None: self.deal_card_to_hand(self.dealer.hand) self.deal_card_to_hand(self.dealer.hand, face_up=False) - def player_action(self, player: BlackjackPlayer, action: str, hand_index: int = 0) -> None: + def player_action( + self, player: BlackjackPlayer, action: str, hand_index: int = 0 + ) -> None: """ Process player action for specific hand @@ -139,4 +143,4 @@ def player_action(self, player: BlackjackPlayer, action: str, hand_index: int = case "surrender": player.adjust_bankroll(current_hand.wager // 2) - current_hand.surrender() \ No newline at end of file + current_hand.surrender() diff --git a/project/scr/game.py b/project/scr/game.py index d895b221..19481ab3 100644 --- a/project/scr/game.py +++ b/project/scr/game.py @@ -8,6 +8,7 @@ class RoundPhase(Enum): """Represents different phases of a blackjack round""" + INITIALIZATION = auto() BETTING = auto() INITIAL_DEAL = auto() @@ -91,7 +92,10 @@ def process_player_turns(self) -> None: break elif action == PlayerAction.SPLIT: - if len(hand.cards) == 2 and hand.cards[0].rank == hand.cards[1].rank: + if ( + len(hand.cards) == 2 + and hand.cards[0].rank == hand.cards[1].rank + ): self.table.split_hand(player, i) # Need to re-evaluate after split continue @@ -116,7 +120,9 @@ def process_dealer_turn(self) -> None: while dealer_hand.calculate_value() not in (-1, 17, 18, 19, 20, 21): self.table.deal_card_to_hand(dealer_hand) - dealer_hand.status = GameResult.WIN if dealer_hand.calculate_value() != -1 else GameResult.BUST + dealer_hand.status = ( + GameResult.WIN if dealer_hand.calculate_value() != -1 else GameResult.BUST + ) self._notify_observers() def process_payouts(self) -> None: @@ -191,7 +197,7 @@ def _display_phase_info(self, phase: RoundPhase) -> None: RoundPhase.PLAYER_TURNS: "Players making decisions...", RoundPhase.DEALER_TURN: "Dealer playing hand...", RoundPhase.PAYOUTS: "Calculating results...", - RoundPhase.COMPLETION: "Round complete!" + RoundPhase.COMPLETION: "Round complete!", } print(phase_descriptions.get(phase, "")) @@ -206,4 +212,4 @@ def _display_table_state(self, table: BlackjackTable) -> None: for j, hand in enumerate(table.player_hands[player]): print(f" Hand {j + 1} (Bet: {hand.wager}):") hand.display() - print(f" Status: {hand.status.name}") \ No newline at end of file + print(f" Status: {hand.status.name}") diff --git a/project/scr/objects.py b/project/scr/objects.py index deea19e8..e958922e 100644 --- a/project/scr/objects.py +++ b/project/scr/objects.py @@ -16,7 +16,7 @@ def __str__(self): CardSuit.CLUBS: "♣", CardSuit.DIAMONDS: "♦", CardSuit.HEARTS: "♥", - CardSuit.SPADES: "♠" + CardSuit.SPADES: "♠", }[self] @@ -51,7 +51,7 @@ def __init__(self, num_decks: int = 1): self.shuffle_cards() def _initialize_deck(self, num_decks: int) -> List[PlayingCard]: - ranks = [str(n) for n in range(2, 11)] + ['J', 'Q', 'K', 'A'] + ranks = [str(n) for n in range(2, 11)] + ["J", "Q", "K", "A"] return [ PlayingCard(suit, rank) for _ in range(num_decks) @@ -99,7 +99,7 @@ def calculate_value(self) -> int: for card in self.cards: if card.rank.isdigit(): total += int(card.rank) - elif card.rank in ('J', 'Q', 'K'): + elif card.rank in ("J", "Q", "K"): total += 10 else: # Ace total += 11 @@ -121,7 +121,7 @@ def surrender(self) -> None: self.is_active = False self.status = GameResult.LOSE - def split_hand(self) -> Tuple['PlayerHand', 'PlayerHand']: + def split_hand(self) -> Tuple["PlayerHand", "PlayerHand"]: if len(self.cards) != 2: raise ValueError("Can only split with exactly two cards") @@ -133,4 +133,4 @@ def display(self) -> None: print("Current hand:") for card in self.cards: print(f" {card}") - print(f"Total value: {self.calculate_value()}") \ No newline at end of file + print(f"Total value: {self.calculate_value()}") diff --git a/project/scr/persons.py b/project/scr/persons.py index 68f39d99..0dd1ad0b 100644 --- a/project/scr/persons.py +++ b/project/scr/persons.py @@ -98,4 +98,4 @@ def new_round(self) -> None: self.hand = PlayerHand([]) # Check if shoe needs replenishing if sum(deck.remaining for deck in self.shoe) < 52: - self.shoe = self._initialize_shoe(len(self.shoe)) \ No newline at end of file + self.shoe = self._initialize_shoe(len(self.shoe)) diff --git a/project/scr/strategies.py b/project/scr/strategies.py index f15d2d9f..a334db35 100644 --- a/project/scr/strategies.py +++ b/project/scr/strategies.py @@ -6,6 +6,7 @@ class PlayerAction(Enum): """Defines possible actions a player can take in blackjack""" + STAND = auto() HIT = auto() SPLIT = auto() @@ -17,10 +18,13 @@ class PlayerAction(Enum): @dataclass class BaseStrategy: """Abstract base class for all blackjack strategies""" + min_bet: int = 10 use_insurance: bool = False - def decide_action(self, hand: PlayerHand, dealer_upcard: PlayingCard) -> PlayerAction: + def decide_action( + self, hand: PlayerHand, dealer_upcard: PlayingCard + ) -> PlayerAction: """Determine optimal action based on game state""" raise NotImplementedError("Strategy subclass must implement decide_action") @@ -31,7 +35,9 @@ class ConservativeStrategy(BaseStrategy): def __init__(self): super().__init__(use_insurance=True) - def decide_action(self, hand: PlayerHand, dealer_upcard: PlayingCard) -> PlayerAction: + def decide_action( + self, hand: PlayerHand, dealer_upcard: PlayingCard + ) -> PlayerAction: hand_value = hand.calculate_value() if hand_value < 17: @@ -42,7 +48,9 @@ def decide_action(self, hand: PlayerHand, dealer_upcard: PlayingCard) -> PlayerA class ScientificStrategy(BaseStrategy): """Mathematically optimal strategy based on probability""" - def decide_action(self, hand: PlayerHand, dealer_upcard: PlayingCard) -> PlayerAction: + def decide_action( + self, hand: PlayerHand, dealer_upcard: PlayingCard + ) -> PlayerAction: cards = hand.cards hand_value = hand.calculate_value() dealer_rank = dealer_upcard.rank @@ -64,41 +72,65 @@ def decide_action(self, hand: PlayerHand, dealer_upcard: PlayingCard) -> PlayerA # Standard decision making return self._handle_hard_hand(hand_value, dealer_rank) - def _evaluate_split(self, cards: list[PlayingCard], dealer_rank: str) -> Optional[PlayerAction]: + def _evaluate_split( + self, cards: list[PlayingCard], dealer_rank: str + ) -> Optional[PlayerAction]: if len(cards) != 2 or cards[0].rank != cards[1].rank: return None card_rank = cards[0].rank - if card_rank in ('A', '8'): - return PlayerAction.SPLIT if dealer_rank != 'A' else PlayerAction.HIT - elif card_rank == '5': + if card_rank in ("A", "8"): + return PlayerAction.SPLIT if dealer_rank != "A" else PlayerAction.HIT + elif card_rank == "5": return PlayerAction.DOUBLE - elif card_rank in ('2', '3', '7'): - return PlayerAction.SPLIT if dealer_rank in ('2', '3', '4', '5', '6', '7') else PlayerAction.HIT - elif card_rank in ('4', '6', '9'): + elif card_rank in ("2", "3", "7"): + return ( + PlayerAction.SPLIT + if dealer_rank in ("2", "3", "4", "5", "6", "7") + else PlayerAction.HIT + ) + elif card_rank in ("4", "6", "9"): # Additional split logic for these ranks pass return None - def _evaluate_double(self, hand_value: int, dealer_rank: str) -> Optional[PlayerAction]: - if hand_value == 9 and dealer_rank in ('2', '3', '4', '5', '6'): + def _evaluate_double( + self, hand_value: int, dealer_rank: str + ) -> Optional[PlayerAction]: + if hand_value == 9 and dealer_rank in ("2", "3", "4", "5", "6"): return PlayerAction.DOUBLE - elif hand_value in (10, 11) and dealer_rank not in ('A', '10', 'J', 'Q', 'K'): + elif hand_value in (10, 11) and dealer_rank not in ("A", "10", "J", "Q", "K"): return PlayerAction.DOUBLE return None def _is_soft_hand(self, cards: list[PlayingCard]) -> bool: - return any(card.rank == 'A' for card in cards) and \ - sum(11 if card.rank == 'A' else - 10 if card.rank in ('J', 'Q', 'K') else - int(card.rank) for card in cards) <= 21 + return ( + any(card.rank == "A" for card in cards) + and sum( + 11 + if card.rank == "A" + else 10 + if card.rank in ("J", "Q", "K") + else int(card.rank) + for card in cards + ) + <= 21 + ) def _handle_soft_hand(self, hand_value: int, dealer_rank: str) -> PlayerAction: if hand_value <= 7: - return PlayerAction.HIT if dealer_rank in ('9', '10', 'J', 'Q', 'K', 'A') else PlayerAction.DOUBLE + return ( + PlayerAction.HIT + if dealer_rank in ("9", "10", "J", "Q", "K", "A") + else PlayerAction.DOUBLE + ) elif hand_value == 8: - return PlayerAction.STAND if dealer_rank in ('2', '3', '4', '5', '6') else PlayerAction.HIT + return ( + PlayerAction.STAND + if dealer_rank in ("2", "3", "4", "5", "6") + else PlayerAction.HIT + ) else: return PlayerAction.STAND @@ -106,7 +138,11 @@ def _handle_hard_hand(self, hand_value: int, dealer_rank: str) -> PlayerAction: if hand_value <= 11: return PlayerAction.HIT elif 12 <= hand_value <= 16: - return PlayerAction.STAND if dealer_rank in ('2', '3', '4', '5', '6') else PlayerAction.HIT + return ( + PlayerAction.STAND + if dealer_rank in ("2", "3", "4", "5", "6") + else PlayerAction.HIT + ) else: return PlayerAction.STAND @@ -117,7 +153,9 @@ class HighRiskStrategy(BaseStrategy): def __init__(self): super().__init__(min_bet=20) - def decide_action(self, hand: PlayerHand, dealer_upcard: PlayingCard) -> PlayerAction: + def decide_action( + self, hand: PlayerHand, dealer_upcard: PlayingCard + ) -> PlayerAction: hand_value = hand.calculate_value() if hand_value <= 6: @@ -125,4 +163,4 @@ def decide_action(self, hand: PlayerHand, dealer_upcard: PlayingCard) -> PlayerA elif hand_value <= 15: return PlayerAction.HIT else: - return PlayerAction.STAND \ No newline at end of file + return PlayerAction.STAND diff --git a/scripts/test_blackjak.py b/scripts/test_blackjak.py index 94c2b510..f29a5bcc 100644 --- a/scripts/test_blackjak.py +++ b/scripts/test_blackjak.py @@ -6,18 +6,18 @@ from project.scr.desk import BlackjackTable # Test card definitions -ACE = PlayingCard(CardSuit.SPADES, 'A') -KING = PlayingCard(CardSuit.HEARTS, 'K') -QUEEN = PlayingCard(CardSuit.DIAMONDS, 'Q') -JACK = PlayingCard(CardSuit.CLUBS, 'J') -TEN = PlayingCard(CardSuit.SPADES, '10') -NINE = PlayingCard(CardSuit.HEARTS, '9') -EIGHT = PlayingCard(CardSuit.DIAMONDS, '8') -SEVEN = PlayingCard(CardSuit.CLUBS, '7') -SIX = PlayingCard(CardSuit.SPADES, '6') -FIVE = PlayingCard(CardSuit.HEARTS, '5') -FOUR = PlayingCard(CardSuit.DIAMONDS, '4') -TWO = PlayingCard(CardSuit.CLUBS, '2') +ACE = PlayingCard(CardSuit.SPADES, "A") +KING = PlayingCard(CardSuit.HEARTS, "K") +QUEEN = PlayingCard(CardSuit.DIAMONDS, "Q") +JACK = PlayingCard(CardSuit.CLUBS, "J") +TEN = PlayingCard(CardSuit.SPADES, "10") +NINE = PlayingCard(CardSuit.HEARTS, "9") +EIGHT = PlayingCard(CardSuit.DIAMONDS, "8") +SEVEN = PlayingCard(CardSuit.CLUBS, "7") +SIX = PlayingCard(CardSuit.SPADES, "6") +FIVE = PlayingCard(CardSuit.HEARTS, "5") +FOUR = PlayingCard(CardSuit.DIAMONDS, "4") +TWO = PlayingCard(CardSuit.CLUBS, "2") @pytest.fixture @@ -27,7 +27,7 @@ def test_players(): BlackjackPlayer(strategy=ScientificStrategy(), initial_bankroll=1000), BlackjackPlayer(strategy=HighRiskStrategy(), initial_bankroll=1000), BlackjackPlayer(strategy=ScientificStrategy(), initial_bankroll=1000), - BlackjackPlayer(initial_bankroll=1000) + BlackjackPlayer(initial_bankroll=1000), ] @@ -64,19 +64,22 @@ def test_game_phases(test_players): RoundPhase.PLAYER_TURNS, RoundPhase.DEALER_TURN, RoundPhase.PAYOUTS, - RoundPhase.COMPLETION + RoundPhase.COMPLETION, ] -@pytest.mark.parametrize("cards,expected_score", [ - ([ACE, KING], 21), - ([NINE, TEN], 19), - ([ACE, ACE, NINE], 21), - ([TEN, FIVE, SIX], 21), - ([TEN, TEN, FIVE], -1), - ([ACE, ACE, ACE, ACE], 14), - ([JACK, QUEEN], 20) -]) +@pytest.mark.parametrize( + "cards,expected_score", + [ + ([ACE, KING], 21), + ([NINE, TEN], 19), + ([ACE, ACE, NINE], 21), + ([TEN, FIVE, SIX], 21), + ([TEN, TEN, FIVE], -1), + ([ACE, ACE, ACE, ACE], 14), + ([JACK, QUEEN], 20), + ], +) def test_hand_scoring(cards, expected_score): """Test hand score calculation with various card combinations""" hand = PlayerHand(cards.copy()) @@ -110,5 +113,3 @@ def test_bankroll_management(test_players): assert player._bankroll < initial_bankrolls[i] elif game.table.player_hands[player][0].status == GameResult.PUSH: assert player._bankroll == initial_bankrolls[i] - - From 04baa9f1bc27cc3861058c18fe1b701c55376f2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A1=D0=BE=D1=84=D0=B8=D1=8F=20=D0=A5=D1=80=D0=B8=D1=81?= =?UTF-8?q?=D0=B0=D0=BD=D0=BA=D0=BE=D0=B2=D0=B0?= <132402521+sssoneta@users.noreply.github.com> Date: Fri, 25 Apr 2025 02:06:50 +0300 Subject: [PATCH 4/4] fix --- project/scr/desk.py | 2 +- project/scr/game.py | 8 ++------ project/scr/persons.py | 10 +++++----- 3 files changed, 8 insertions(+), 12 deletions(-) diff --git a/project/scr/desk.py b/project/scr/desk.py index 0c056cf9..7a3ef785 100644 --- a/project/scr/desk.py +++ b/project/scr/desk.py @@ -1,6 +1,6 @@ from typing import List, Dict from project.scr.persons import BlackjackPlayer, BlackjackDealer -from project.scr.objects import PlayerHand +from project.scr.objects import PlayerHand, GameResult class BlackjackTable: diff --git a/project/scr/game.py b/project/scr/game.py index 19481ab3..5e6a7964 100644 --- a/project/scr/game.py +++ b/project/scr/game.py @@ -37,7 +37,7 @@ def __init__(self, players: List[BlackjackPlayer], num_decks: int = 6): def _setup_observers(self) -> None: """Setup game state observers for UI updates""" - self.observers = [] + self.observers: list = [] def _notify_observers(self) -> None: """Notify all observers about game state changes""" @@ -112,10 +112,6 @@ def process_dealer_turn(self) -> None: self.current_phase = RoundPhase.DEALER_TURN dealer_hand = self.table.dealer.hand - # Reveal dealer's hole card - if len(dealer_hand.cards) > 1: - dealer_hand.cards[1].face_up = True - # Dealer draws according to rules while dealer_hand.calculate_value() not in (-1, 17, 18, 19, 20, 21): self.table.deal_card_to_hand(dealer_hand) @@ -208,7 +204,7 @@ def _display_table_state(self, table: BlackjackTable) -> None: # Display each player's hands for i, player in enumerate(table.players): - print(f"\nPlayer {i + 1} (Bankroll: {player.bankroll}):") + print(f"\nPlayer {i + 1} (Bankroll: {player._bankroll}):") for j, hand in enumerate(table.player_hands[player]): print(f" Hand {j + 1} (Bet: {hand.wager}):") hand.display() diff --git a/project/scr/persons.py b/project/scr/persons.py index 0dd1ad0b..ecccf605 100644 --- a/project/scr/persons.py +++ b/project/scr/persons.py @@ -14,7 +14,7 @@ class BlackjackPlayer: current_bet (int): Active wager amount """ - def __init__(self, strategy: BaseStrategy = None, initial_bankroll: int = 1000): + def __init__(self, strategy=None, initial_bankroll: int = 1000): self.strategy = strategy or ConservativeStrategy() self._bankroll = initial_bankroll self.current_bet = 0 @@ -56,7 +56,7 @@ class BlackjackDealer: def __init__(self, deck_count: int = 6): self.shoe = self._initialize_shoe(deck_count) - self.hand: PlayerHand = None + # self.hand: PlayerHand = None def _initialize_shoe(self, deck_count: int) -> List[CardDeck]: """Create and shuffle multiple decks for the shoe""" @@ -78,7 +78,7 @@ def deal_card(self, face_up: bool = True) -> PlayingCard: active_deck = random.choice(self.shoe) try: card = active_deck.deal_card() - card.face_up = face_up + # card.face_up = face_up return card except ValueError: # Reshuffle if deck is empty @@ -88,8 +88,8 @@ def deal_card(self, face_up: bool = True) -> PlayingCard: def reveal_hand(self) -> None: """Show dealer's hand with all cards face up""" if self.hand: - for card in self.hand.cards: - card.face_up = True + # for card in self.hand.cards: + # card.face_up = True print("\nDealer's Hand:") self.hand.display()