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中__init__()方法的高级应用
May 11 Python
在Django中管理Users和Permissions以及Groups的方法
Jul 23 Python
python安装模块如何通过setup.py安装(超简单)
May 05 Python
Django基础知识与基本应用入门教程
Jul 20 Python
Python DataFrame一列拆成多列以及一行拆成多行
Aug 06 Python
Python+OpenCV实现实时眼动追踪的示例代码
Nov 11 Python
用python的turtle模块实现给女票画个小心心
Nov 23 Python
TensorFlow 读取CSV数据的实例
Feb 05 Python
利用Python计算KS的实例详解
Mar 03 Python
python实现程序重启和系统重启方式
Apr 16 Python
Python使用tkinter实现摇骰子小游戏功能的代码
Jul 02 Python
浅析NumPy 切片和索引
Sep 02 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
DOTA2 玩家自创拉野攻略 特色英雄快速成长篇
2020/04/20 DOTA
PHP 循环列出目录内容的函数代码
2010/05/26 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(四)
2014/06/23 PHP
分享十款最出色的PHP安全开发库中文详细介绍
2015/03/22 PHP
PHP实现的数据对象映射模式详解
2019/03/20 PHP
php使用gearman进行任务分发操作实例详解
2020/02/26 PHP
网站被黑的假象--ARP欺骗之页面中加入一段js
2007/05/16 Javascript
extjs 学习笔记(二) Ext.Element类
2009/10/13 Javascript
javascript屏蔽右键代码
2014/05/15 Javascript
原生JavaScript生成GUID的实现示例
2014/09/05 Javascript
实例详解AngularJS实现无限级联动菜单
2016/01/15 Javascript
EasyUI闪屏EasyUI页面加载提示(原理+代码+效果图)
2016/02/21 Javascript
JavaScript ES5标准中新增的Array方法
2016/06/28 Javascript
Bootstrap实现渐变顶部固定自适应导航栏
2020/08/27 Javascript
Vue动态获取width的方法
2018/08/22 Javascript
微信小程序结合Storage实现搜索历史效果
2019/05/18 Javascript
vue页面加载时的进度条功能(实例代码)
2020/01/13 Javascript
加速vue组件渲染之性能优化
2020/04/09 Javascript
js节流防抖应用场景,以及在vue中节流防抖的具体实现操作
2020/09/21 Javascript
ant-design-vue中的select选择器,对输入值的进行筛选操作
2020/10/24 Javascript
vue中利用three.js实现全景图的完整示例
2020/12/07 Vue.js
[01:01:24]DOTA2上海特级锦标赛A组败者赛 EHOME VS CDEC第三局
2016/02/25 DOTA
python使用标准库根据进程名如何获取进程的pid详解
2017/10/31 Python
python定向爬取淘宝商品价格
2018/02/27 Python
Django1.11配合uni-app发起微信支付的实现
2019/10/12 Python
Python实现银行账户资金交易管理系统
2020/01/03 Python
一款纯css3实现的颜色渐变按钮的代码教程
2014/11/12 HTML / CSS
HTML5学习心得总结(推荐)
2016/07/08 HTML / CSS
美国和加拿大房车出售在线分类广告:RVT.com
2018/04/23 全球购物
如何在C# winform中异步调用web services
2015/09/21 面试题
《草虫的村落》教学反思
2014/02/16 职场文书
音乐教育专业自荐信
2014/09/18 职场文书
CSS3 制作的书本翻页特效
2021/04/13 HTML / CSS
如何使用vue3打造一个物料库
2021/05/08 Vue.js
Pytorch 统计模型参数量的操作 param.numel()
2021/05/13 Python
JPA如何使用entityManager执行SQL并指定返回类型
2021/06/15 Java/Android