当前位置: 首页 > news >正文

PYTHON 斗地主发牌 (简易版)

利用方法:
1. random.randint( ) 随机抽取数字 方法
2.random.sample((抽取范围的参数),(抽取的个数)) 返回的是列表 所以用[0]可以输出里面的元素

import random# 1. 创建牌
# 花色
color = ["\u2660", "\u2663", "\u2665", "\u2666"]
# 数字
number = ["A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K"]
# 大小鬼
JOKER = ["KING", "QUEEN"]
# 空列表存放牌
cards = []
for i in color:for j in number:# 字符串拼接cards.append(i + j)
# 加入大小鬼
cards.extend(JOKER)# 2. 洗牌的方法(参数:牌/次数(默认=1))
def fy_shuffle(s, n=1):for i in range(n):target = list(s)res = []while target:k = random.randint(0, len(target) - 1)res.append(target.pop(k))return res# 3. 发牌
def del_cards():# 3.1 确定玩家a = input("请输入玩家1号的名字:")b = input("请输入玩家2号的名字:")c = input("请输入玩家3号的名字:")# 存放牌r = {}r[a],r[b],r[c] = [],[],[]# 3.2 洗牌new_cards = fy_shuffle(cards,3)# 3.3 发牌for i in range(17):r[a].append(new_cards.pop())r[b].append(new_cards.pop())r[c].append(new_cards.pop())# 3.4 选地主d = random.sample((a,b,c),1)[0]print(f"这一轮的地主是:")r[d].extend((new_cards.pop(),new_cards.pop(),new_cards.pop()))print(f"[{a}]这一轮的牌是:[{' '.join(r[a])}]\n")print(f"[{b}]这一轮的牌是:[{' '.join(r[b])}]\n")print(f"[{c}]这一轮的牌是:[{' '.join(r[c])}]\n")# 4.启动游戏
del_cards()

http://www.lryc.cn/news/120673.html

相关文章:

  • CSS文本裁剪
  • ClickHouse常见的引擎和使用
  • 构建之法 - 软件工程实践教学:一线教师的13问
  • 联调 matlab 遇到的一些事儿
  • 时序预测 | Matlab实现基于GRNN广义回归神经网络的电力负荷预测模型
  • 3.2 Tomcat基础
  • 认识http的方法、Header、状态码以及简单实现一个http的业务逻辑
  • Faiss在windows下安装和使用
  • 【JavaEE进阶】SpringBoot项目的创建
  • c++二进制转化十进制代码(小数)
  • 07_ansible, 条件选择、加载客户事件、在roles和includes上面应用’when’语句、条件导入、基于变量选择文件和模版、注册变量
  • 4个简化IT服务台任务的ChatGPT功能
  • 群晖7.X版安装cpolar内网穿透
  • [保研/考研机试] KY183 素数 北京航空航天大学复试上机题 C++实现
  • Java基础入门篇——IDEA开发第一个入门程序(五)
  • 系统学习Linux-Redis基础
  • 实现缓存el-table分页大小,用户新建标签打开该页面需保持分页大小(考虑是否为嵌入式页面)
  • 056B R包ENMeval教程-基于R包ENMeval对MaxEnt模型优化调参和结果评价制图(更新)
  • MySQL_数据库的DDL语句(表的创建与修改)
  • 常见面试题:字节序判别和转换
  • Maxwell与canal工具对比
  • SpringBoot——如何运行Python脚本并返回数据
  • 在生产环境中部署Elasticsearch:最佳实践和故障排除技巧———索引与数据上传(二)
  • R语言初学者书籍推荐
  • Taro+Vue3,点击按钮把另一个页面分享出去
  • CSS基础:学习CSS样式的基本语法和应用,了解如何美化网页。
  • MySQL语句总和之表数据操作(增删改查)
  • HDFS中snapshot快照机制
  • YOLOv5基础知识入门(5)— 损失函数(IoU、GIoU、DIoU、CIoU和EIoU)
  • Centos7源码安装redis