python使用if语句实现一个猜拳游戏详解


Posted in Python onAugust 27, 2019

任务要求

在控制台中提示输入石头、剪刀、布,按回车键,然后给出游戏结果。

分析

我们知道在游戏规则中,石头克剪刀,剪刀克布,布克石头。但是这在计算机中并不是很好直接的表示,因此我们分别用0、1、2分别代表游戏中的石头剪刀布。

那么电脑该如何出拳呢?那就该用到python中的一个模块random中的一个方法random.randint()在0~2范围内产生一个随机整数,就表电脑出拳了。

random.randint()的用法如下:

# 首先导入模块
import random
# 调用时传入两个整型数字,返回从1-2中任意一个整型数字
a = random.randint(1,2)
# 打印出1或者2
print(a)
# 再或者,那么b就可能是1-10中的任意一个数字(包括1和10)
b = random.randint(1,10)
print(b)
#在本案例中,我们只要0-2中的任意一个数即可,故
computer = random.randint(0,2)

玩家出拳的话,可以从键盘输入0-2中的任意一个数并保存在一个变量中,然后用if语句比较得出结果即可。

代码实现:

import random

# 从键盘获取用户的输入,只能输入0-2中的数字,否则结果会不正确,以后会有升级版
person = input('请输入:石头(0)、剪刀(1)、布(2):')
# input 返回的是一个字符串类型,randint(0, 2)返回的是int类型,需要把person强制转换成int类型,类型一致才可以比较
person = int(person)
computer = random.randint(0, 2)

# 为了更友好的显示信息
if person == 0:
 print('玩家:石头')
elif person == 1:
 print('玩家:剪刀')
else:
 print('玩家:布')
if computer == 0:
 print('电脑:石头')
elif computer == 1:
 print('电脑:剪刀')
else:
 print('电脑:布')

# 如果出拳一样就是平局
if person == computer:
 print('你好厉害呀!居然和我打成平局!')

# 玩家:石头 电脑:剪刀
# 玩家:剪刀 电脑:布
# 玩家:布 电脑:石头 这三种情况下玩家赢

elif person == 0 and computer == 1 or person == 1 and computer == 2 or person == 2 and computer == 0:
 print('恭喜你,你赢了!')
# 其他情况都是玩家输
else:
 print('真遗憾,你输了!')

运行示意图

python使用if语句实现一个猜拳游戏详解

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

Python 相关文章推荐
python中的多线程实例教程
Aug 27 Python
Django中几种重定向方法
Apr 28 Python
Python简单计算文件夹大小的方法
Jul 14 Python
在Python的Flask框架中验证注册用户的Email的方法
Sep 02 Python
python 上下文管理器使用方法小结
Oct 10 Python
python登录并爬取淘宝信息代码示例
Dec 09 Python
Python生成一个迭代器的实操方法
Jun 18 Python
使用python-pptx包批量修改ppt格式的实现
Feb 14 Python
Python基于Dlib的人脸识别系统的实现
Feb 26 Python
解决windows上安装tensorflow时报错,“DLL load failed: 找不到指定的模块”的问题
May 20 Python
keras 多gpu并行运行案例
Jun 10 Python
python实现简单石头剪刀布游戏
Oct 24 Python
Python socket 套接字实现通信详解
Aug 27 #Python
python 使用pdfminer3k 读取PDF文档的例子
Aug 27 #Python
手写一个python迭代器过程详解
Aug 27 #Python
浅析Python语言自带的数据结构有哪些
Aug 27 #Python
python3应用windows api对后台程序窗口及桌面截图并保存的方法
Aug 27 #Python
python协程gevent案例 爬取斗鱼图片过程解析
Aug 27 #Python
Python中Unittest框架的具体使用
Aug 27 #Python
You might like
PHP排序算法之希尔排序(Shell Sort)实例分析
2018/04/20 PHP
爆炸式的JS圆形浮动菜单特效代码
2010/03/03 Javascript
javascript字符串拼接的效率问题
2010/12/25 Javascript
jQuery 下拉列表 二级联动插件分享
2012/03/29 Javascript
javascript中RegExp保留小数点后几位数的方法分享
2013/08/13 Javascript
jquery实现在网页指定区域显示自定义右键菜单效果
2015/08/25 Javascript
解决JS无法调用Controller问题的方法
2015/12/31 Javascript
jquery对Json的各种遍历方法总结(必看篇)
2016/09/29 Javascript
javascript入门之数组[新手必看]
2016/11/21 Javascript
Sequelize中用group by进行分组聚合查询
2016/12/12 Javascript
jquery dataview数据视图插件使用方法
2016/12/23 Javascript
Mac下使用charles遇到的问题以及解决办法
2017/01/10 Javascript
javascript 正则表达式去空行方法
2017/01/24 Javascript
JS拖动选择table里的单元格完整实例【基于jQuery】
2019/05/28 jQuery
详解vue-cli@2.x项目迁移日志
2019/06/06 Javascript
Element-ui DatePicker显示周数的方法示例
2019/07/19 Javascript
js页面加载后执行的几种方式小结
2020/01/30 Javascript
JS中锚点链接点击平滑滚动并自由调整到顶部位置
2021/02/06 Javascript
[02:51]2014DOTA2国际邀请赛 IG战队官方纪录片
2014/07/21 DOTA
Python中用PIL库批量给图片加上序号的教程
2015/05/06 Python
在Python的Django框架中调用方法和处理无效变量
2015/07/15 Python
Python中的连接符(+、+=)示例详解
2017/01/13 Python
python通过Windows下远程控制Linux系统
2018/06/20 Python
Python连接字符串过程详解
2020/01/06 Python
numpy的Fancy Indexing和array比较详解
2020/06/11 Python
python可以用哪些数据库
2020/06/22 Python
python怎么自定义捕获错误
2020/06/29 Python
HTML5 body设置自适应全屏
2020/05/07 HTML / CSS
时尚孕妇装:HATCH Collection
2019/09/24 全球购物
电子商务优秀毕业生求职信
2014/07/11 职场文书
医院营销工作计划
2015/01/16 职场文书
研究生简历自我评
2015/03/11 职场文书
中学生勤俭节约倡议书
2015/04/29 职场文书
2015年幼儿园中班下学期工作总结
2015/05/22 职场文书
大学军训通讯稿(2016最新版)
2015/12/21 职场文书
简述Java中throw-throws异常抛出
2021/08/07 Java/Android