python猜拳if判断语句_python使用if语句实现一个猜拳游戏详解
任务要求
在控制台中提示输入石头、剪刀、布,按回车键,然后给出游戏结果。
分析
我们知道在游戏规则中,石头克剪刀,剪刀克布,布克石头。但是这在计算机中并不是很好直接的表示,因此我们分别用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使用if语句实现一个猜拳游戏详解相关推荐
- python实例化是什么意思_Python中实例化class的执行顺序示例详解
前言 本文主要介绍了关于Python实例化class的执行顺序的相关内容,下面话不多说了,来一起看看详细的介绍吧 Python里对类的实例化时有怎样的顺序 一般来说一个类里面有类变量和方法,比如我们定 ...
- python怎么截取字符串函数_Python截取字符串(字符串切片)方法详解
字符串本质上就是由多个字符组成的,因此程序允许通过索引来操作字符,比如获取指定索引处的字符,获取指定字符在字符串中的位置等. Python字符串直接在方括号([])中使用索引即可获取对应的字符,字符串 ...
- python数组对应元素相乘_python的几种矩阵相乘的公式详解
1. 同线性代数中矩阵乘法的定义: np.dot() np.dot(A, B):对于二维矩阵,计算真正意义上的矩阵乘积,同线性代数中矩阵乘法的定义.对于一维矩阵,计算两者的内积.见如下Python代码 ...
- python导入模块的变量_python 环境变量和import模块导入方法(详解)
1.定义 模块:本质就是.py结尾的文件(逻辑上组织python代码)模块的本质就是实现一个功能 文件名就是模块名称 包: 一个有__init__.py的文件夹:用来存放模块文件 2.导入模块 for ...
- python黑帽编程视频_Python黑帽编程 3.4 跨越VLAN详解
VLAN(Virtual Local Area Network),是基于以太网交互技术构建的虚拟网络,既可以将同一物理网络划分成多个VALN,也可以跨越物理网络障碍,将不同子网中的用户划到同一个VLA ...
- python内存的回收机制_python的内存管理和垃圾回收机制详解
简单来说python的内存管理机制有三种 1)引用计数 2)垃圾回收 3)内存池 接下来我们来详细讲解这三种管理机制 1,引用计数: 引用计数是一种非常高效的内存管理手段,当一个pyhton对象被引用 ...
- python跳一跳编程构造_python实现微信跳一跳辅助工具步骤详解
说明 1.windows上安装安卓模拟器,安卓版本5.1以上 2.模拟器里下载安装最新的微信6.6.1 3.最好使用python2.7,python3的pyhook包有bug,解决比较麻烦 步骤 1. ...
- python中unicode编码表_Python中的字符串操作和编码Unicode详解
本文主要给大家介绍了关于 Python中的字符串操作和编码Unicode的一些知识,下面话不多说,需要的朋友们下面来一起学习吧. 字符串类型 str:Unicode字符串.采用''或者r''构造的字符 ...
- python 公众号文章发布_python如何导出微信公众号文章方法详解
1.安装wkhtmltopdf 下载地址:https://wkhtmltopdf.org/downloads.html 我测试用的是windows的,下载安装后结果如下 2 编写python 代码导出 ...
- python多个判断条件_python if 条件语句多条件判断怎么做?
相信大家肯定在if函数的使用上踩过大坑,这是个逻辑上的思维,经常因为一点不注意,整个代码就乱了,面对分支选择我们要怎么做?一起来看下吧~ 实例01:编程实现输入学生的语文.数学.英语的成绩,单科满分1 ...
最新文章
- 简单的成绩录入系统程序及分析以及思考
- Node响应中文时解决乱码问题
- 搜索引擎学习(五)Lucene操作索引
- html博客页面实验报告,×××实验报告
- .net生成文字图片
- 一文读懂VictoriaMetrics集群方案
- SpringBoot整合themeleaf+bootstrap (五)
- linux hook 任意内核函数,linux内核中的hook函数详解
- 大厂开发“大牛”,你距离他们有多远?
- Linux 开发中的常用命令 ( Cygwin 环境也同样适用)
- 基于Lua语言的wireshark插件编写
- linux vnc 蓝屏,【典型问题分析 之 蓝屏问题】
- 群晖218J搭建VLMCSD
- 从零读懂CAN总线(上)
- (八) 项目干系人管理
- Unity Shader学习(五)鼠标移动方块
- SSL-ZYC 游戏
- 教会微信:突破文件发送100M限制
- 织梦DedeCMS后台模块管理列表不显示 【终极解决办法】
- 将网络url图片链接转换为File类型对象