'''
斗地主:v1.0
'''
import random
def creat_poker():
# 撲克9種:2-10
poker_num = [str(i) for i in range(2, 11)]
# 剩下的4種
poker_str = ['A', 'J', 'Q', 'K']
# 2個王
poker_king = ['大王', '小王']
# 花色
poker_color = ['紅桃', '黑桃', '方塊', '梅花']
# 先選擇花色,在選擇13種牌,最后加上大小王
pokers = ['%s%s' % (i, j) for i in poker_color for j in poker_num + poker_str] + poker_king
return pokers
def poker_bottoms(pokers):
Three_bottoms = random.sample(pokers, 3)
# 4.從牌中刪除3張留底
for i in range(len(pokers) - 1, -1, -1):
if pokers[i] in Three_bottoms:
del pokers[i]
return pokers, Three_bottoms
def Licensing(pokers):
person_a = pokers[::3]
person_b = pokers[1::3]
person_c = pokers[2::3]
return person_a, person_b, person_c
if __name__ == '__main__':
# 1.創建牌
pokers = creat_poker()
# 2.洗牌
random.shuffle(pokers)
print(pokers, len(pokers))
# 3.選擇3張留底
pokers, Three_bottoms = poker_bottoms(pokers)
print(pokers, len(pokers), Three_bottoms)
# 4.發牌
person_a, person_b, person_c = Licensing(pokers)
print(person_a, len(person_a))
print(person_b, len(person_b))
print(person_c, len(person_c))
# 5.假設a地主
person_a = person_a + Three_bottoms
print(person_a, len(person_a))
結果:
['黑桃4', '黑桃5', '紅桃10', '梅花9', '紅桃Q', '紅桃3', '方塊2', '梅花4', '紅桃A', '黑桃Q', '紅桃K', '梅花7', '紅桃7', '方塊7', '方塊9', '黑桃6', '梅花10', '梅花A', '方塊5', '黑桃2', '梅花3', '黑桃3', '梅花K', '紅桃5', '小王', '黑桃9', '方塊Q', '黑桃J', '黑桃7', '梅花2', '黑桃10', '黑桃A', '梅花5', '紅桃2', '黑桃K', '梅花6', '紅桃6', '黑桃8', '紅桃J', '方塊J', '方塊3', '紅桃9', '方塊8', '紅桃8', '方塊4', '大王', '方塊A', '方塊K', '梅花J', '紅桃4', '梅花8', '方塊10', '梅花Q', '方塊6'] 54 ['黑桃4', '黑桃5', '紅桃10', '梅花9', '紅桃Q', '紅桃3', '方塊2', '梅花4', '紅桃A', '黑桃Q', '紅桃K', '梅花7', '紅桃7', '方塊7', '方塊9', '梅花10', '梅花A', '方塊5', '黑桃2', '梅花3', '黑桃3', '梅花K', '紅桃5', '小王', '黑桃9', '方塊Q', '黑桃J', '黑桃7', '梅花2', '黑桃10', '黑桃A', '梅花5', '黑桃K', '梅花6', '紅桃6', '黑桃8', '紅桃J', '方塊J', '方塊3', '紅桃9', '方塊8', '方塊4', '大王', '方塊A', '方塊K', '梅花J', '紅桃4', '梅花8', '方塊10', '梅花Q', '方塊6'] 51 ['紅桃8', '黑桃6', '紅桃2'] ['黑桃4', '梅花9', '方塊2', '黑桃Q', '紅桃7', '梅花10', '黑桃2', '梅花K', '黑桃9', '黑桃7', '黑桃A', '梅花6', '紅桃J', '紅桃9', '大王', '梅花J', '方塊10'] 17 ['黑桃5', '紅桃Q', '梅花4', '紅桃K', '方塊7', '梅花A', '梅花3', '紅桃5', '方塊Q', '梅花2', '梅花5', '紅桃6', '方塊J', '方塊8', '方塊A', '紅桃4', '梅花Q'] 17 ['紅桃10', '紅桃3', '紅桃A', '梅花7', '方塊9', '方塊5', '黑桃3', '小王', '黑桃J', '黑桃10', '黑桃K', '黑桃8', '方塊3', '方塊4', '方塊K', '梅花8', '方塊6'] 17 ['黑桃4', '梅花9', '方塊2', '黑桃Q', '紅桃7', '梅花10', '黑桃2', '梅花K', '黑桃9', '黑桃7', '黑桃A', '梅花6', '紅桃J', '紅桃9', '大王', '梅花J', '方塊10', '紅桃8', '黑桃6', '紅桃2'] 20
