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数据类型详解(二)列表
May 08 Python
详解Python之数据序列化(json、pickle、shelve)
Mar 30 Python
详解python的webrtc库实现语音端点检测
May 31 Python
python实现简易云音乐播放器
Jan 04 Python
python微信跳一跳游戏辅助代码解析
Jan 29 Python
django 发送邮件和缓存的实现代码
Jul 18 Python
opencv导入头文件时报错#include的解决方法
Jul 31 Python
Jupyter notebook 远程配置及SSL加密教程
Apr 14 Python
Keras load_model 导入错误的解决方式
Jun 09 Python
Python实现京东抢秒杀功能
Jan 25 Python
Keras保存模型并载入模型继续训练的实现
Feb 20 Python
Python 统计序列中元素的出现频度
Apr 26 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中利用sleep函数实现定时执行功能实现代码
2016/08/25 PHP
Laravel构建即时应用的一种实现方法详解
2017/08/31 PHP
利用jQuery 实现GridView异步排序、分页的代码
2010/02/06 Javascript
jquery中实现标签切换效果的代码
2011/03/01 Javascript
HTML复选框和单选框 checkbox和radio事件介绍
2012/12/12 Javascript
Jquery网页出现的乱码问题的三种解决方法
2013/06/30 Javascript
js鼠标及对象坐标控制属性详细解析
2013/12/14 Javascript
jQuery实现渐变下拉菜单的简单方法
2015/03/11 Javascript
JS禁用页面上所有控件的实现方法(附demo源码下载)
2015/12/17 Javascript
jquery.validate提示错误信息位置方法
2016/01/22 Javascript
深入解析jQuery中Deferred的deferred.promise()方法
2016/05/03 Javascript
浅谈js中的引用和复制(传值和传址)
2016/09/18 Javascript
AngularJS中的promise用法分析
2017/05/19 Javascript
react-router实现跳转传值的方法示例
2017/05/27 Javascript
基于Vue.js实现tab滑块效果
2017/07/23 Javascript
Angularjs中数据绑定的实例详解
2017/08/25 Javascript
判断滚动条滑到底部触发事件(实例讲解)
2017/11/15 Javascript
使用jQuery 操作table 完成单元格合并的实例
2017/12/27 jQuery
vue-cli 2.*中导入公共less文件的方法步骤
2018/11/22 Javascript
Vue入门之数量加减运算操作示例
2018/12/11 Javascript
nodejs脚本centos开机启动实操方法
2020/03/04 NodeJs
python 性能提升的几种方法
2016/07/15 Python
python自动化脚本安装指定版本python环境详解
2017/09/14 Python
Python实现的计算马氏距离算法示例
2018/04/03 Python
Numpy中ndim、shape、dtype、astype的用法详解
2020/06/14 Python
python--shutil移动文件到另一个路径的操作
2020/07/13 Python
python 实现倒计时功能(gui界面)
2020/11/11 Python
css3的transform造成z-index无效解决方案
2014/12/04 HTML / CSS
基于DOM+CSS3实现OrgChart组织结构图插件
2016/03/02 HTML / CSS
日语专业个人的求职信
2013/12/03 职场文书
预防艾滋病宣传标语
2014/06/25 职场文书
搞笑的获奖感言
2014/08/16 职场文书
房屋买卖委托书格式范本格式
2014/10/13 职场文书
运动会广播稿100字
2015/08/19 职场文书
vmware虚拟机打不开vmx文件怎么办 ?vmware虚拟机vmx文件打开方法
2022/04/08 数码科技
电脑开机弹出documents文件夹怎么回事?弹出documents文件夹解决方法
2022/04/08 数码科技