#-*- coding: utf-8 -*
import random
import time
cardType = ("hei","hong","mei","fang")
cardNum = ("A","2","3","4","5","6","7","8","9","10","J","Q","K")
def generatecards():
cardPairs = [] #两层循环嵌套,生成52张花色牌,存入列表
for type in cardType:
for num in cardNum:
cardPairs.append((type,num))
cardPairs.append(("Joker","Red")) #大王
cardPairs.append(("Joker", "Black")) # 小王
return cardPairs
def dispatchcards(cardPairs):
#洗牌 - 多次调用
random.shuffle(cardPairs)
random.shuffle(cardPairs)
#玩家手牌
player1Cards = []
player2Cards = []
player3Cards = []
coverCardNum = 3 #3张底牌
for index in range(0,len(cardPairs) - coverCardNum):
cardPair = cardPairs[index]
if index % 3 == 0: #player1
player1Cards.append(cardPair)
print
elif index % 3 == 1: #player2
player2Cards.append(cardPair)
else: #player3
player3Cards.append(cardPair)
print ''.join(cardPair),'\t\t', #模拟发牌效果,输出当前发出的牌
time.sleep(0.1) #发牌停顿
print '\n'
print u"玩家1 手牌:",len(player1Cards)
for cardPair in player1Cards:
print ''.join(cardPair)
print
print u'玩家2 手牌:',len(player2Cards)
for cardPair in player2Cards:
print ''.join(cardPair)
print
print u"玩家3 手牌",len(player3Cards)
for cardPair in player3Cards:
print ''.join(cardPair)
print
print u'底牌:'
rest_cards = cardPairs[-3:] #剩余三张牌
for card in rest_cards:
print ''.join(card)
if __name__ == '__main__':
#生成牌
cardPairs = generatecards()
#分配牌
dispatchcards(cardPairs)
python模块列表实现斗地主手牌
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 据说这副斗地主牌难倒了99%的人,农民怎么才能赢?游戏规则: 可以炸,可以三带一,但不能三带二,可以四带二,也可以...
- 有一种情况是这样 你和闺蜜兴致勃勃的一起报名了一家健身房,然后你们每周相约一起去健身,半年过了,闺蜜隐约练出了马甲...