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数据结构树和二叉树简介
Apr 29 Python
python实现可以断点续传和并发的ftp程序
Sep 13 Python
Python简单格式化时间的方法【strftime函数】
Sep 18 Python
TensorFlow安装及jupyter notebook配置方法
Sep 08 Python
Python常见工厂函数用法示例
Mar 21 Python
python skimage 连通性区域检测方法
Jun 21 Python
新手如何发布Python项目开源包过程详解
Jul 11 Python
python 用所有标点符号分隔句子的示例
Jul 15 Python
解决python flask中config配置管理的问题
Jul 26 Python
python定间隔取点(np.linspace)的实现
Nov 27 Python
python+opencv实现车牌定位功能(实例代码)
Dec 24 Python
Python开发之QT解决无边框界面拖动卡屏问题(附带源码)
May 27 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
ajax+php打造进度条 readyState各状态
2010/03/20 PHP
php小技巧 把数组的键和值交换形成了新的数组,查找值取得键
2011/06/02 PHP
php 数组字符串搜索array_search技巧
2016/07/05 PHP
Laravel框架基于ajax和layer.js实现无刷新删除功能示例
2019/01/17 PHP
JS OOP包机制,类创建的方法定义
2009/11/02 Javascript
使用隐藏的new来创建对象
2011/03/29 Javascript
js判断数据类型如判断是否为数组是否为字符串等等
2014/01/15 Javascript
一个简单的jQuery计算器实现了连续计算功能
2014/07/21 Javascript
jQuery判断元素上是否绑定了指定事件的方法
2015/03/17 Javascript
Kindeditor在线文本编辑器如何过滤HTML
2016/04/14 Javascript
jQuery循环遍历子节点并获取值的方法
2016/04/14 Javascript
vue之数据交互实例代码
2017/06/20 Javascript
NodeJS收发GET和POST请求的示例代码
2017/08/25 NodeJs
vue项目中实现图片预览的公用组件功能
2018/10/26 Javascript
nodejs基础之多进程实例详解
2018/12/27 NodeJs
react用Redux中央仓库实现一个todolist
2019/09/29 Javascript
Python的函数嵌套的使用方法
2014/01/24 Python
Python实现SVN的目录周期性备份实例
2015/07/17 Python
Python自定义主从分布式架构实例分析
2016/09/19 Python
Python虚拟环境virtualenv的安装与使用详解
2017/05/28 Python
pygame实现弹力球及其变速效果
2017/07/03 Python
Python文件和流(实例讲解)
2017/09/12 Python
python opencv 图像尺寸变换方法
2018/04/02 Python
python 重定向获取真实url的方法
2018/05/11 Python
python将txt等文件中的数据读为numpy数组的方法
2018/12/22 Python
简单了解Django ORM常用字段类型及参数配置
2020/01/07 Python
Python定时器线程池原理详解
2020/02/26 Python
Python开发入门——迭代的基本使用
2020/09/03 Python
党员自我评价分享
2013/12/13 职场文书
监理资料员岗位职责
2014/01/03 职场文书
八项规定自查自纠报告及整改措施
2014/10/26 职场文书
党的群众路线教育实践活动个人整改措施范文
2014/11/04 职场文书
创业计划书之冷饮店
2019/09/27 职场文书
PyQt5 显示超清高分辨率图片的方法
2021/04/11 Python
阿里云 Windows server 2019 配置FTP
2022/04/28 Servers
Vue深入理解插槽slot的使用
2022/08/05 Vue.js