一个简单的发牌程序
“”"
定义4种花色 顺序是 黑桃、红桃、方块、梅花
1、通过键盘中的输入法,调出 “特殊符号”,输入 ♠♥♦♣
2、也可以通过构造函数 反查’黑桃’ ord(“♠”)=8924
3、通过字符构造函数 [chr(x) for x in range(8924,8924+4)] 获得4种花色
“”"
from random import shuffle
#生成4种花色♠♥♦♣
p4_style=[chr(x) for x in range(9824,9824+4)]
#单色牌13张
p13=[ ‘A’, ‘K’, ‘Q’, ‘J’, ‘10’, ‘9’, ‘8’, ‘7’, ‘6’, ‘5’, ‘4’, ‘3’,‘2’]
#配上4种花色,构造52张牌
p52=[x+y for x in p4_style for y in p13]
#大小王分别是sun,moon
p2=[‘sun’,‘moon’]
#全部牌54张
p54=p2+p52
#54张牌混乱,随机,相当于洗牌
shuffle(p54)
#定义4个玩家,初始化列表为空
player1=[]
player2=[]
player3=[]
player4=[]
#因为54张牌不能均等地分配给4个玩家,所以要忽略在循环中p54已经为空,出现“IndexError: pop from empty list”错误。
while p54: #只要全部的牌没有发完。
try:
player1.append(p54.pop(0))
player2.append(p54.pop(0))
player3.append(p54.pop(0))
player4.append(p54.pop(0))
except IndexError:
pass
#输出4个玩家手中的牌
print(’\n第1 玩家’,player1)
print(’\n第2 玩家’,player2)
print(’\n第3 玩家’,player3)
print(’\n第4 玩家’,player4)