个人用一副扑克牌打争上游,已知扑克牌有红桃、黑桃、方片、 梅花4种花色,每个花色又有1~13这13个数字,其中1用A表示,11用]表示, 12用Q表示,13用K表示。编写程序,模拟3个人摸到的扑克牌。
时间: 2024-10-28 19:16:04 浏览: 34
为了编写这样的程序,我们可以创建一个简单的Python类来代表每张牌,并利用随机模块来模拟洗牌和发牌过程。这里是一个简化的例子:
```python
import random
class Card:
def __init__(self, suit, rank):
self.suit = suit
self.rank = rank
# 定义牌面和对应的字母映射
suits = ['红桃', '黑桃', '方片', '梅花']
ranks = [str(i) for i in range(2, 15)] + ['A', 'J', 'Q', 'K']
def get_rank_number(rank):
if rank.lower() == 'a':
return 1
elif rank.lower() in ('j', 'q', 'k'):
return {'j': 11, 'q': 12, 'k': 13}[rank.lower()]
else:
return int(rank)
# 初始化一副牌并洗牌
deck = [Card(suit, get_rank_number(rank)) for suit in suits for rank in ranks]
random.shuffle(deck)
# 模拟三个人每人发四张牌
players = [{'cards': deck[:4]} for _ in range(3)]
deck = deck[4:]
# 打印每个人的手牌
for player, cards in players.items():
print(f"玩家{player+1}的手牌:")
for card in cards['cards']:
print(f"{card.rank}{card.suit}")
#
阅读全文