python模拟实现分发扑克牌


Posted in Python onApril 22, 2020

本文实例为大家分享了python分发扑克牌的具体代码,供大家参考,具体内容如下

52张扑克牌发个4个玩家,每人13张。

要求:

自动生成一幅扑克牌组;洗牌;发牌到玩家手中;将玩家手中扑克牌按花色大小整理好。

思路一

import random
import operator
def auto():
  pokers=[]
  poker=[]
  for i in ['♥','♠','♦','♣']:
    for j in ['A','2','3','4','5','6','7','8','9','10','J','Q','K']:
      poker.append(i)
      poker.append(j)
      pokers.append(poker)
      poker=[]
  return pokers
poker=auto()
random.shuffle(poker)
li={}
for k in ['player1','player2','player3','player4']:
  b=random.sample(poker,13)  
  for s in b:
    poker.remove(s)
  li.setdefault(k,b)    
print('player1:',sorted(li['player1'],key=operator.itemgetter(0,1)))
print('player2:',sorted(li['player2'],key=operator.itemgetter(0,1)))  
print('player3:',sorted(li['player3'],key=operator.itemgetter(0,1)))
print('player4:',sorted(li['player4'],key=operator.itemgetter(0,1)))

思路二

import random
import time
A=['♥','♠','♦','♣']
B=['A','2','3','4','5','6','7','8','9','10','J','Q','K']
poker=[]
pokers=[]
n=1
for i in A:
  for j in B:
     pokers.append((n,(i+j)))
     n=n+1
print("开始洗牌....")
random.shuffle(pokers)
def xipai(x):
  for i in x:
    pokers.remove(i)
  return pokers
def fapai(y):
  for i in y:
    print(i[1],',',end=" ")
def paixu(z):
  for i in z:
    print(i[1],',',end=" ")
time.sleep(3)
a=random.sample(pokers,13) 
pokers=xipai(a)  
print("开始给player1发牌:\n")
print(fapai(a))
b=random.sample(pokers,13) 
pokers=xipai(b)  
print("开始给player2发牌:\n")
print(fapai(b))
c=random.sample(pokers,13) 
pokers=xipai(c)  
print("开始给player3发牌:\n")
print(fapai(c))
d=random.sample(pokers,13) 
pokers=xipai(d)  
print("开始给player4发牌:\n")
print(fapai(d))

a.sort()
b.sort()
c.sort()
d.sort()

time.sleep(3)
print("player1的牌:\n")
print(paixu(a))
print("player2的牌:\n")
print(paixu(b))
print("player3的牌:\n")
print(paixu(c))
print("player4的牌:\n")
print(paixu(d))

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python django集成cas验证系统
Jul 14 Python
python处理文本文件并生成指定格式的文件
Jul 31 Python
Python获取单个程序CPU使用情况趋势图
Mar 10 Python
Python检测一个对象是否为字符串类的方法
May 21 Python
django在接受post请求时显示403forbidden实例解析
Jan 25 Python
Python打开文件,将list、numpy数组内容写入txt文件中的方法
Oct 26 Python
解决python中画图时x,y轴名称出现中文乱码的问题
Jan 29 Python
python实现祝福弹窗效果
Apr 07 Python
python django下载大的csv文件实现方法分析
Jul 19 Python
关于numpy中eye和identity的区别详解
Nov 29 Python
python带参数打包exe及调用方式
Dec 21 Python
Python json模块与jsonpath模块区别详解
Mar 05 Python
tensorflow模型文件(ckpt)转pb文件的方法(不知道输出节点名)
Apr 22 #Python
有趣的Python图片制作之如何用QQ好友头像拼接出里昂
Apr 22 #Python
python模拟斗地主发牌
Apr 22 #Python
matlab 计算灰度图像的一阶矩,二阶矩,三阶矩实例
Apr 22 #Python
python根据完整路径获得盘名/路径名/文件名/文件扩展名的方法
Apr 22 #Python
matlab中二维插值函数interp2的使用详解
Apr 22 #Python
python 一维二维插值实例
Apr 22 #Python
You might like
获取URL文件名后缀
2013/10/24 PHP
PHP中设置一个严格30分钟过期Session面试题的4种答案
2014/07/30 PHP
php短址转换实现方法
2015/02/25 PHP
jquery validate使用攻略 第四步
2010/07/01 Javascript
CSS和JS标签style属性对照表(方便js开发的朋友)
2010/11/11 Javascript
(跨浏览器基础事件/浏览器检测/判断浏览器)经验代码分享
2013/01/24 Javascript
JS中的prototype与面向对象的实例讲解
2013/05/22 Javascript
JavaScript通过Date-Mask将日期转换成字符串的方法
2015/06/04 Javascript
基于BootStrap Metronic开发框架经验小结【六】对话框及提示框的处理和优化
2016/05/12 Javascript
jQuery实现简单弹窗遮罩效果
2017/02/27 Javascript
vue-cli如何快速构建vue项目
2017/04/26 Javascript
AngularJs每天学习之总体介绍
2017/08/07 Javascript
详解JS数组Reduce()方法详解及高级技巧
2017/08/18 Javascript
node.js操作MongoDB的实例详解
2017/10/11 Javascript
360doc网站不登录就无法复制内容的解决方法
2018/01/27 Javascript
Babel 入门教程学习笔记
2018/06/13 Javascript
Vue项目全局配置页面缓存之按需读取缓存的实现详解
2018/08/01 Javascript
jQuery实现带3D切割效果的轮播图功能示例【附源码下载】
2019/04/04 jQuery
vue+element创建动态的form表单及动态生成表格的行和列
2019/05/20 Javascript
vue实现微信浏览器左上角返回按钮拦截功能
2020/01/18 Javascript
vue中keep-alive、activated的探讨和使用详解
2020/07/26 Javascript
vue 数据操作相关总结
2020/12/17 Vue.js
python实现归并排序算法
2018/11/22 Python
Python将字典转换为XML的方法
2020/08/01 Python
python批量提取图片信息并保存的实现
2021/02/05 Python
css3实现一款模仿iphone样式的注册表单
2013/03/20 HTML / CSS
荷兰网上买鞋:MooieSchoenen.nl
2017/09/12 全球购物
英国一家集合了众多有才华设计师品牌的奢侈店:Wolf & Badger
2018/04/18 全球购物
大学生求职计划书
2014/04/30 职场文书
税务干部群众路线教育实践活动对照检查材料
2014/09/20 职场文书
酒店服务员岗位职责
2015/02/09 职场文书
卫生院义诊活动总结
2015/05/07 职场文书
会议营销主持词
2015/07/03 职场文书
2015小学教育教学工作总结
2015/07/21 职场文书
Docker官方工具docker-registry案例演示
2022/04/13 Servers
详细介绍Java中的CyclicBarrier
2022/04/13 Java/Android