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 Web框架Tornado运行和部署
Oct 19 Python
Python中格式化format()方法详解
Apr 01 Python
Pycharm编辑器技巧之自动导入模块详解
Jul 18 Python
python学习笔记之列表(list)与元组(tuple)详解
Nov 23 Python
Python求出0~100以内的所有素数
Jan 23 Python
Python装饰器原理与用法分析
Apr 30 Python
Python爬虫实战之12306抢票开源
Jan 24 Python
Django框架orM与自定义SQL语句混合事务控制操作
Jun 27 Python
python内存动态分配过程详解
Jul 15 Python
浅谈Python中(&,|)和(and,or)之间的区别
Aug 07 Python
python多线程同步实例教程
Aug 11 Python
用60行代码实现Python自动抢微信红包
Feb 04 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顺序查找和二分查找示例
2014/03/27 PHP
分享一则PHP定义函数代码
2015/02/26 PHP
php生成Android客户端扫描可登录的二维码
2016/05/13 PHP
Laravel 5.2 文档 数据库 ―― 起步介绍
2019/10/21 PHP
json简单介绍
2008/06/10 Javascript
jQuery each()小议
2010/03/18 Javascript
基于jquery的网页SELECT下拉框美化代码
2010/10/28 Javascript
js中split和replace的用法实例
2015/02/28 Javascript
js实现点击文本框显示日期选择器特效代码分享
2020/05/21 Javascript
jQuery Validation PlugIn的使用方法详解
2015/12/18 Javascript
工厂模式在JS中的实践
2017/01/18 Javascript
详解a++和++a的区别
2017/08/30 Javascript
解决Js先触发失去焦点事件再执行点击事件的问题
2018/08/30 Javascript
jquery.param()实现数组或对象的序列化方法
2018/10/08 jQuery
vue动态绑定class选中当前列表变色的方法示例
2018/12/19 Javascript
简单了解JavaScript sort方法
2019/11/25 Javascript
JavaScript之Blob对象类型的具体使用方法
2019/11/29 Javascript
Vue中keep-alive组件的深入理解
2020/08/23 Javascript
jQuery实现简单三级联动效果
2020/09/05 jQuery
Python Web开发模板引擎优缺点总结
2014/05/06 Python
在Python中进行自动化单元测试的教程
2015/04/15 Python
pygame播放音乐的方法
2015/05/19 Python
深入理解NumPy简明教程---数组1
2016/12/17 Python
python爬取w3shcool的JQuery课程并且保存到本地
2017/04/06 Python
python 网络编程详解及简单实例
2017/04/25 Python
Python3.0中普通方法、类方法和静态方法的比较
2019/05/03 Python
Python大数据之从网页上爬取数据的方法详解
2019/11/16 Python
CSS3实现多背景模拟动态边框的效果
2016/11/08 HTML / CSS
关于canvas.toDataURL 在iOS运行失败的问题解决
2020/09/16 HTML / CSS
高分子材料与工程专业个人求职信
2013/12/15 职场文书
质检部职责
2013/12/28 职场文书
安全生产先进个人事迹材料
2014/12/30 职场文书
幼师辞职信怎么写
2015/02/27 职场文书
回复函范文
2015/07/14 职场文书
查看nginx配置文件路径和资源文件路径的方法
2021/03/31 Servers
你真的了解PHP中的引用符号(&)吗
2021/05/12 PHP