先创建一个列表,存入五十四张牌,用列表转化为集合的方法打乱列表的顺序,将打乱的牌按顺序分发给三个玩家,并留下三张底牌存入一个列表输出

# 将54张牌放入列表中
list1 = ['大王', '小王']
list2 = ['A', '2', '3', '4', '5', '6', '7', '8', '9', '10','J','Q','K']
list3 = ['红桃', '黑桃', '方块', '梅花']
for k in range(4):
    for j in range(13):
        a = list3[k]
        b = list2[j]
        c = a+b
        list1.append(c)
# 将列表转化为集合,打乱顺序
set_new = set(list1)
# 将集合再次转化为列表,重新排序
list4 = list(set_new)
wan_jia1 = []
wan_jia2 = []
wan_jia3 = []
di_pai = []
i = 0
# 一人有17张牌
while i < 52:
    wan_jia1.append(list4[i])
    wan_jia2.append(list4[i + 1])
    wan_jia3.append(list4[i + 2])
    i = i + 3
di_pai.append(list4[51])
di_pai.append(list4[52])
di_pai.append(list4[53])
print("玩家1的牌是:", wan_jia1)
print("玩家2的牌是:", wan_jia2)
print("玩家3的牌是:", wan_jia3)
print("底牌是:", di_pai)

更多推荐

python 编程模拟生成扑克牌(54张),使用列表相关知识实现三个玩家分发扑克的过程,底牌为3张。