下面是一个简单的抽扑克牌的Python小程序,你可以直接在命令行中运行它:
python
import random
class PokerGame:
def __init__(self):
self.suits = ['♠', '♥', '♦', '♣']
self.values = ['A', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K']
self.deck = []
self.hand = []
self.create_deck
def create_deck(self):
创建一副完整的扑克牌
self.deck = []
for suit in self.suits:
for value in self.values:
card = f"{suit}{value}
self.deck.append(card)
print("已创建一副新的扑克牌!")
def shuffle_deck(self):
洗牌
random.shuffle(self.deck)
print("扑克牌已经洗好了!")
def draw_card(self):
从牌堆顶抽一张牌
if len(self.deck) == 0:
print("牌堆空了!请重新创建一副牌。")
return None
card = self.deck.pop
self.hand.append(card)
print(f"你抽到了: {card}")
return card
def draw_multiple_cards(self, count=5):
一次抽取多张牌
cards_drawn = []
for i in range(count):
if len(self.deck) == 0:
print("牌堆空了!无法继续抽牌。")
break
cards_drawn.append(self.draw_card)
return cards_drawn
def show_hand(self):
显示手中的牌
if not self.hand:
print("你手中还没有牌。")
else:
print("你手中的牌: ", " ".join(self.hand))
def show_remaining_cards(self):
显示剩余牌数
print(f"牌堆中还剩 {len(self.deck)} 张牌")
def reset_game(self):
重置游戏
self.hand = []
self.create_deck
print("游戏已重置!")
def main:
game = PokerGame
while True:
print("\
=== 扑克牌抽牌游戏 ===")
print("1. 洗牌")
print("2. 抽一张牌")
print("3. 抽五张牌")
print("4. 查看手牌")
print("5. 查看剩余牌数")
print("6. 重置游戏")
print("7. 退出")
choice = input("请选择操作 (1-7): ")
if choice == '1':
game.shuffle_deck
elif choice == '2':
game.draw_card
elif choice == '3':
game.draw_multiple_cards(5)
elif choice == '4':
game.show_hand
elif choice == '5':
game.show_remaining_cards
elif choice == '6':
game.reset_game
elif choice == '7':
print("感谢游玩!再见!")
break
else:
print("无效输入,请输入1-7之间的数字")
if __name__ == "__main__":
main
如何使用这个程序
1. 将上面的代码保存为一个.py文件(例如`poker_game.py`)
HHpoker官网下载2. 在命令行中运行:`python poker_game.py`
3. 按照菜单提示选择操作
功能说明
这个程序模拟了真实扑克牌的抽牌体验,每次抽牌后都会将该牌从牌堆中移除,直到牌堆为空为止。