python麻将洗牌算法
时间: 2024-04-29 09:18:24 浏览: 174
python实现斗地主分牌洗牌
Python麻将洗牌算法是一种用于打乱麻将牌的算法。下面是一种常见的Python麻将洗牌算法的实现方式:
1. 创建一个包含所有麻将牌的列表,共136张牌(包括4副花色,每副花色有9张数字牌和4张字牌)。
2. 使用random模块的shuffle函数对牌列表进行随机打乱,以实现洗牌效果。
3. 将打乱后的牌列表分成4个玩家的手牌,每个玩家13张牌。
4. 返回每个玩家的手牌列表。
下面是一个示例代码:
```python
import random
def shuffle_mahjong():
# 创建包含所有麻将牌的列表
mahjong = []
for suit in ['万', '条', '筒']:
for number in range(1, 10):
mahjong.append(str(number) + suit)
for suit in ['东', '南', '西', '北', '中', '发', '白']:
mahjong.extend([suit] * 4)
# 随机打乱牌列表
random.shuffle(mahjong)
# 分发手牌给4个玩家
players = [mahjong[i:i+13] for i in range(0, 52, 13)]
return players
# 调用函数进行洗牌
players = shuffle_mahjong()
print("玩家1的手牌:", players)
print("玩家2的手牌:", players)
print("玩家3的手牌:", players)
print("玩家4的手牌:", players)
```
阅读全文