python实现一个摇骰子小游戏
作者:Bio大恐龙 时间:2021-11-06 05:49:26
一、程序实现
分析问题:骰子比大小是我们经常玩的一个小游戏也十分的简单,就是不同玩家骰子点数比较大小。
编写程序:
#骰子比大小
import random as r #引入random库
peopel = input("请输入游戏人数:") #游戏人数
if 2 <= eval(peopel) <=6: #判断游戏人数是否符合设定
list_pl = {} #创建空字典,用于存储玩家及其获得的点数
list_numerb = [] #创建空列表,用于存储玩家的点数
for i in range(eval(peopel)): #产生玩家及其点数
list_numerb.append(r.randint(1,6)) #产生1到6之间的整数
list_pl[chr(65+i)] = list_numerb[i] #将对应的点数与玩家产生关联
print(list_pl) #输出结果
else:
print("该游戏至少需要两名玩家且不多于六位!")
运行结果如下:
请输入游戏人数:2
{'A': 5, 'B': 4}
请输入游戏人数:5
{'A': 4, 'B': 6, 'C': 3, 'D': 4, 'E': 1}
请输入游戏人数:9
该游戏至少需要两名玩家且不多于六位!
二、程序优化
1.预防不正确输入
部分用户可能将玩家人数输入成“三位”或者其他,为了预防这种错误,可以提示中加入例子或者用try,except实现。
peopel = input("请输入游戏人数:(例如:3)")
或者
try:
import random as r
peopel = input("请输入游戏人数:(例如:3)")
if 2 <= eval(peopel) <=6:
list_pl = {}
list_numerb = []
for i in range(eval(peopel)):
list_numerb.append(r.randint(1,6)) #产生1到6之间的整数
list_pl[chr(65+i)] = list_numerb[i]
print(list_pl)
else:
print("该游戏至少需要两名玩家且不多于六位!")
except:
print("输入格式错误,请按照提示输入!")
2.优化体验
首先可以优化的地方就是当人数变多时,玩家点数不利于观察比较。
#骰子比大小
try:
import random as r
peopel = input("请输入游戏人数:(例如:3)")
if 2 <= eval(peopel) <=6:
list_pl = {}
list_numerb = []
for i in range(eval(peopel)):
list_numerb.append(r.randint(1,6)) #产生1到6之间的整数
list_pl[chr(65+i)] = list_numerb[i]
print("{}玩家的点数为:{}".format(chr(65+i),list_pl[chr(65+i)]))
else:
print("该游戏至少需要两名玩家且不多于六位!")
except:
print("输入格式错误,请按提示正确输入")
结果如下:
请输入游戏人数:(例如:3)5
A玩家的点数为:6
B玩家的点数为:1
C玩家的点数为:6
D玩家的点数为:5
E玩家的点数为:4
来源:https://blog.csdn.net/ouyangk1026/article/details/122628337
标签:python,摇骰子
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Python实现炸金花游戏的示例代码
2022-01-15 05:24:17
服务端XMLHTTP(ServerXMLHTTP in ASP)进阶应用-User Agent伪装
2008-11-11 12:29:00
![](https://img.aspxhome.com/file/UploadPic/200811/11/if8l_googlerss-96s.png)
WEB2.0网页制作标准教程(9)第一个CSS布局实例
2008-02-19 19:05:00
![](https://img.aspxhome.com/file/UploadPic/20082/19/2008219191629508s.gif)
用MSXML2.ServerXMLHTTP的setTimeouts属性解决并死问题
2010-03-02 20:21:00
Python中字符串的常见操作技巧总结
2021-06-26 18:35:45
python基础教程之基本数据类型和变量声明介绍
2023-08-28 22:45:55
jquery常用的表单操作很全很详细
2011-09-01 19:21:11
在win和Linux系统中python命令行运行的不同
2023-08-03 05:16:22
JS实现拖动模糊框特效
2023-08-06 05:18:51
![](https://img.aspxhome.com/file/2023/0/55910_0s.gif)
数据库的选择原则是什么?
2010-07-14 21:05:00
Python安装jieba库详细教程
2023-05-09 12:18:19
![](https://img.aspxhome.com/file/2023/5/84935_0s.png)
django框架用户权限中的session缓存到redis中的方法
2021-10-13 01:09:48
opencv python模糊影像检测效果
2021-07-27 04:44:13
![](https://img.aspxhome.com/file/2023/6/80716_0s.jpg)
Python 多线程共享变量的实现示例
2022-12-17 09:39:10
仿windows选项卡效果拾零
2013-07-13 09:33:42
如何利用SysOjects来获知数据库的信息?
2010-01-01 15:43:00
css基础教程布局篇之一
2008-07-31 17:21:00
![](https://img.aspxhome.com/file/UploadPic/20087/31/200873117275859s.jpg)
python+selenium+PhantomJS抓取网页动态加载内容
2021-01-28 15:41:24
Python爬虫之爬取哔哩哔哩热门视频排行榜
2021-08-19 04:33:14
![](https://img.aspxhome.com/file/2023/4/80404_0s.png)
Python数据模型与Python对象模型的相关总结
2021-05-15 02:21:43