网络编程
位置:首页>> 网络编程>> Python编程>> python小程序之4名牌手洗牌发牌问题解析

python小程序之4名牌手洗牌发牌问题解析

作者:fbvukn  发布时间:2023-08-28 04:06:20 

标签:python,洗牌,发牌

本文为大家解析了python实现4名牌手洗牌发牌的问题,供大家参考,具体内容如下

编写程序, 4名牌手打牌,计算机随机将52张牌(不含大小鬼)发给4名牌手,在屏幕上显示每位牌手的牌。创建函数gen_pocker()交换牌的顺序,函数getColor()获取牌的花色,函数getValue()获取牌的牌面大小,函数getPuk()获取花色和牌面大小的组合

运行效果

[51, 45, 31, 4, 48, 26, 11, 2, 24, 44, 22, 21, 16, 41, 50, 47, 13, 25, 17, 29, 42, 27, 19, 33, 5, 40, 1, 8, 30, 18, 10, 9, 0, 3, 14, 46, 36, 35, 12, 15, 20, 34, 38, 39, 43, 37, 32, 7, 28, 23, 49, 6]

牌手1:方块4 方块8 方块A 方块Q 红桃3 红桃5 红桃J 草花6 草花A 黑桃10 黑桃4 黑桃5 黑桃K

牌手2:方块6 方块J 方块K 红桃10 红桃2 红桃9 红桃A 红桃Q 草花4 黑桃2 黑桃3 黑桃6 黑桃7

牌手3:方块10 方块2 方块5 方块7 红桃6 红桃7 红桃K 草花2 草花J 草花K 草花Q 黑桃J 黑桃Q

牌手4:方块3 方块9 红桃4 红桃8 草花10 草花3 草花5 草花7 草花8 草花9 黑桃8 黑桃9 黑桃A


import random
def gen_pocker(n):
 random.shuffle(n)
 return n
#产生牌的花色
def getColor(n):
 if(n>=0 and n<=12):
   return "梅花"
 elif(n>=13 and n<=25):
   return "方块"
 elif(n>=26 and n<=38):
   return "红桃"
 elif(n>=39 and n<=51):
   return "黑桃"
def getValue(n):
 if n==0 or n==13 or n==26 or n==39:
   return 'A'
 elif n==12 or n==38 or n==25 or n==51:
   return 'K'
 elif n==11 or n==37 or n==24 or n==50:
   return 'Q'
 elif n==10 or n==36 or n==23 or n==49:
   return 'J'
 else:
   return n%13
def getPuk():
 List=[]    #代表一副牌,现在表示还没有牌,只是一个牌盒
 for i in range(0,52):
   List.append(i)  #按顺序往牌盒中放入52张牌
 List=gen_pocker(List)  #将牌盒中的牌打乱顺序
 List1=[]       #定义4个牌手
 List2=[]    
 List3=[]
 List4=[]
 for i in range(0,52): #实现发牌
   if i<13:    #打乱后的前13张牌发给牌手1,实现牌手1手牌中如何含有花色和数字
     List1.append(getColor(List[i])+str(getValue(List[i])))
   elif i<26:
     List2.append(getColor(List[i])+str(getValue(List[i])))
   elif i<39:
     List3.append(getColor(List[i])+str(getValue(List[i])))
   else:
     List4.append(getColor(List[i])+str(getValue(List[i])))
 print(List)
 print("牌手1",List1)
 print("牌手2",List2)
 print("牌手3",List3)
 print("牌手4",List4)
getPuk()

来源:https://blog.csdn.net/fbvukn/article/details/86090805

0
投稿

猜你喜欢

  • 在SQL Server开发问题中你可能会问到的十个问题:1、什么是常见的对表和字段的名字约束?2、有没有可能在不了解T-SQL的情况下编写存
  • 需要准备的工具:SQL Query Analyzer和SqlExec Sunx Version第一部分:去掉xp_cmdshell保护系统的
  • 利用XMLHTTP无刷新自动实时更新数据,2秒自动刷新一次,2秒取得一次数据.demo.htm 前台显示<script la
  • 在oracle中,函数和存储过程是经常使用到的,他们的语法中有很多相似的地方,可是也有它们的不同之处,这段时间刚学完函数与存储过程,来给自己
  •  分页显示是页面常用技术,可用下列代码来实现:<%page=Request.QueryString("page&q
  • 如今,基本每个网站都会需要到Tab切换展示内容的滑动门效果应用,这种效果可以在更少的页面空间内,展示更多的网站内容,节约空间,方便用户集中操
  • 第一节:WAP的潜能 这些日子,我们常听到WAP技术,一种手机上网的技术。从技术上讲,移动电话不可能和PC来竞争,移动电话的屏幕只能容下很少
  • 对网站的LOGO设计做了一些归纳,希望得到批评,发现写的太长了,又不忍心删减,就分成两部分了,第一部分是有关设计基础的。第二部分是关于网站L
  • 网站用户为什么注册?这个问题在平时我们讨论的并不多。我们常常单纯的在设想如何简化注册流程,如何从细节的关怀入手避免用户注册时填写错误信息造成
  • 主函数(Main Function)是程序中最重要的部分之一,它是程序入口点,也是程序开始执行的地方。1、主函数的定义在 Python 中,
  • 在PyCharm2017中同目录下import其他模块,会出现No model named ...的报错,但实际可以运行这是因为PyChar
  • 目录:分析和设计组件编码实现和算法用 Ant 构建组件测试 JavaScript 组件我们走到哪儿了?前两期思考了太多东西,你是否已有倦意?
  • 通常的聊天室所采用的程序,也就是Chat程序了,其基本结构原理是不会采用到数据库的。那究竟采用什么技术呢?我们知道ASP变量当中Sessio
  • 1、图片防盗链在一些大型网站中,比如百度贴吧,该站点的图片采用了防盗链的规则,以至于使用下面代码会发生错误。简单代码:<!DOCTYP
  • 用ASP实现搜索引擎的功能是一件很方便的事,可是,如何实现类似3721的智能搜索呢?比如,当在搜索条件框内输入“中国人民”时,自动从中提取“
  • 如何搭建完整的网站架构并设计出一个出色的网站?关于这个问题,我们很难提出一个绝对权威和正确的设计思路,但任何网站的设计都需要遵循一个循序渐进
  • 和大多数的语言脚本一样,学习ASP最好的方法就是亲身尝试ASP,使用你自己的系统安装PWS或者IIS。你可以边学习边在你自己的服务器上测试A
  • 在默认的情况下,MySQL搜索不区分大小写(但某些字符集始终区分大小写,如czech)。这意味着,如果你使用col_name LIKE &#
  • 因AJAX接受数据时服务器默认是采用UTF-8的编码形式进行传送,所以在很多GB2312中文网页中应用AJAX回传数据经常会发生中文乱码。解
  • 前言当需要将多张图像拼接成一张更大的图像时,通常会用到图片拼接技术。这种技术在许多领域中都有广泛的应用,例如计算机视觉、图像处理、卫星图像、
手机版 网络编程 asp之家 www.aspxhome.com