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根据路径导入模块的方法
Sep 30 Python
Python线程详解
Jun 24 Python
基于python的多进程共享变量正确打开方式
Apr 28 Python
一文了解Python并发编程的工程实现方法
May 31 Python
Python3 JSON编码解码方法详解
Sep 06 Python
Python 函数绘图及函数图像微分与积分
Nov 20 Python
python 实现二维列表转置
Dec 02 Python
python 爬取疫情数据的源码
Feb 09 Python
python 实现表情识别
Nov 21 Python
Python3爬虫ChromeDriver的安装实例
Feb 06 Python
python process模块的使用简介
May 14 Python
Python必备技巧之字符数据操作详解
Mar 23 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采用ajax数据提交post与post常见方法总结
2014/11/10 PHP
Yii配置文件用法详解
2014/12/04 PHP
PHP cookie,session的使用与用户自动登录功能实现方法分析
2019/06/05 PHP
有一段有意思的代码-javascript现实多行信息
2007/08/26 Javascript
JS简单实现文件上传实例代码(无需插件)
2013/11/15 Javascript
javascript面向对象之对象的深入理解
2015/01/13 Javascript
JS阻止事件冒泡行为和闭包的方法
2016/06/16 Javascript
js字符串引用的两种方式(必看)
2016/09/18 Javascript
AngularJS开发教程之控制器之间的通信方法分析
2016/12/25 Javascript
Nodejs+angularjs结合multiparty实现多图片上传的示例代码
2017/09/29 NodeJs
js 显示日期时间的实例(时间过一秒加1)
2017/10/25 Javascript
vue2里面ref的具体使用方法
2017/10/27 Javascript
React Native日期时间选择组件的示例代码
2018/04/27 Javascript
vue中使用vue-cli接入融云实现即时通信
2019/04/19 Javascript
vue-cli3 热更新配置操作
2020/09/18 Javascript
Python中下划线的使用方法
2015/03/27 Python
解决Python 爬虫URL中存在中文或特殊符号无法请求的问题
2018/05/11 Python
python opencv将图片转为灰度图的方法示例
2019/07/31 Python
Flask模板引擎Jinja2使用实例
2020/04/23 Python
Python ORM框架Peewee用法详解
2020/04/29 Python
python不到50行代码完成了多张excel合并的实现示例
2020/05/28 Python
three.js模拟实现太阳系行星体系功能
2019/09/03 HTML / CSS
伦敦时尚生活的缩影:LN-CC
2017/01/24 全球购物
Gap加拿大官网:Gap Canada
2017/08/24 全球购物
大学教师年终总结的自我评价
2013/10/29 职场文书
成功经营餐厅的创业计划书范文
2013/12/26 职场文书
中学生差生评语
2014/01/30 职场文书
七年级生物教学反思
2014/01/30 职场文书
班干部演讲稿
2014/04/24 职场文书
大班幼儿评语大全
2014/04/30 职场文书
乡镇四风对照检查材料
2014/08/31 职场文书
股份合作协议书
2014/09/10 职场文书
不服从上级领导安排的检讨书
2014/09/14 职场文书
早读课迟到检讨书
2014/09/25 职场文书
2015年幼儿园后勤工作总结
2015/04/25 职场文书
Python 数据可视化神器Pyecharts绘制图像练习
2022/02/28 Python