python 写棋牌十三道中四套三条的代码
时间: 2023-11-22 09:52:24 浏览: 40
这里提供一个简单的代码实现:
```python
import random
# 初始化一副扑克牌
cards = ['A♠', '2♠', '3♠', '4♠', '5♠', '6♠', '7♠', '8♠', '9♠', '10♠', 'J♠', 'Q♠', 'K♠',
'A♥', '2♥', '3♥', '4♥', '5♥', '6♥', '7♥', '8♥', '9♥', '10♥', 'J♥', 'Q♥', 'K♥',
'A♣', '2♣', '3♣', '4♣', '5♣', '6♣', '7♣', '8♣', '9♣', '10♣', 'J♣', 'Q♣', 'K♣',
'A♦', '2♦', '3♦', '4♦', '5♦', '6♦', '7♦', '8♦', '9♦', '10♦', 'J♦', 'Q♦', 'K♦']
# 洗牌
random.shuffle(cards)
# 发牌
player1 = cards[:13]
player2 = cards[13:26]
player3 = cards[26:39]
player4 = cards[39:52]
# 排序
player1.sort()
player2.sort()
player3.sort()
player4.sort()
# 判断是否有四套三条
sets = [player1, player2, player3, player4]
four_sets = []
for s in sets:
three_sets = []
for i in range(len(s)-2):
if s[i] == s[i+1] and s[i] == s[i+2]:
three_sets.append(s[i:i+3])
if len(three_sets) >= 4:
four_sets.append(three_sets)
# 输出结果
if len(four_sets) > 0:
print("玩家中有四套三条!")
for i, s in enumerate(four_sets):
print("玩家{}:".format(i+1))
for t in s:
print(" ".join(t))
else:
print("玩家中没有四套三条!")
```
这个代码会随机生成一副扑克牌,然后洗牌并发牌给四个玩家。接着,它会检查每个玩家是否有四套三条,如果有,则输出每个玩家的四套三条。如果没有,则输出相应的提示信息。