python实现简单石头剪刀布游戏


Posted in Python onOctober 24, 2021

前言:

相信大家在童年或者生活中都玩过石头剪刀布这个游戏,这个游戏需要两个及以上的人。而今天,网上也实现了石头剪刀布的游戏。通过初步学习python,也学会了如何编写这个游戏。

目标:

利用python判断语句实现石头剪刀布的游戏。

思路:

假设剪刀(0),石头(1),布(2),那么如何才能获胜呢?

python实现简单石头剪刀布游戏

那么根据这个表格可以初步写出代码:

if user == 0 and computer == 0:
 print("平局")
elif user == 0 and computer == 1:
 print("玩家胜")
elif user == 0 and computer == 2:
 print("电脑胜")
elif user == 1 and computer == 0:
 print("电脑获胜")
elif user == 1 and computer == 1:
 print("平局")
elif user == 1 and computer == 2:
 print("玩家胜")
elif user == 2 and computer == 0:
 print("玩家胜")
elif user == 2 and computer == 1:
 print("电脑胜")
elif user == 2 and computer == 2:
 print("平局")

当我们写完这串代码,我们不难发现,这样写代码太麻烦了,谁都怕麻烦,所以,我们可以根据这之中的规律写出更短的代码。

python实现简单石头剪刀布游戏

根据上表,我们可以很轻松的发现规律:

1.if user-computer == -2 or user-computer == 1 时,是玩家胜出
2.if user-computer == -1 or user-computer == 2 时,是电脑胜出
3.if user-computer == 0 时,是平局

那么精简后的部分代码如下:

if user == computer:
 print("玩家是%s,电脑是%s,平局"%(usr,com))
elif user - computer == -1 or user - computer == 2:
 print("玩家是%s,电脑是%s,玩家输"%(usr,com))
else:
 print("玩家是%s,电脑是%s,玩家胜"%(usr,com))

因为电脑是随机的,我们并不知道,所以需要调用random 完整的代码如下:

import random
computer = random.randint(0,2)
user = int(input("剪刀(0),石头(1),布(2):"))
#判断电脑出的是石头,剪刀,还是布
if computer == 0:
 com = "剪刀"
elif computer == 1:
 com = "石头"
else:
 com = "布" 
#判断玩家出的石头,剪刀,还是布
if user == 0:
 usr = "剪刀"
elif user == 1:
 usr = "石头"
else:
 usr = "布"
#结果并输出
if user == computer:
 print("玩家是%s,电脑是%s,平局"%(usr,com))
elif user - computer == -1 or user - computer == 2:
 print("玩家是%s,电脑是%s,玩家输"%(usr,com))
else:
  print("玩家是%s,电脑是%s,玩家胜"%(usr,com))

效果演示图如下:

python实现简单石头剪刀布游戏

到此这篇关于python实现简单石头剪刀布游戏的文章就介绍到这了,更多相关python实现石头剪刀布游戏内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
简介Django框架中可使用的各类缓存
Jul 23 Python
深入理解Python单元测试unittest的使用示例
Nov 18 Python
利用Python如何生成hash值示例详解
Dec 20 Python
python删除本地夹里重复文件的方法
Nov 19 Python
Python创建一个空的dataframe,并循环赋值的方法
Nov 08 Python
Python常用数据类型之间的转换总结
Sep 06 Python
PyCharm下载和安装详细步骤
Dec 17 Python
Python将列表中的元素转化为数字并排序的示例
Dec 25 Python
Python打印不合法的文件名
Jul 31 Python
Python+Appium实现自动化清理微信僵尸好友的方法
Feb 04 Python
tensorflow学习笔记之tfrecord文件的生成与读取
Mar 31 Python
Python爬虫之爬取最新更新的小说网站
May 06 Python
Python 数据结构之十大经典排序算法一文通关
Python 的 sum() Pythonic 的求和方法详细
Oct 16 #Python
为了顺利买到演唱会的票用Python制作了自动抢票的脚本
Python 游戏大作炫酷机甲闯关游戏爆肝数千行代码实现案例进阶
Python实现老照片修复之上色小技巧
Python anaconda安装库命令详解
Python爬虫入门案例之爬取去哪儿旅游景点攻略以及可视化分析
You might like
解析php中的escape函数
2013/06/29 PHP
Zend Framework教程之Application和Bootstrap用法详解
2016/03/10 PHP
PHP时间函数使用详解
2019/03/21 PHP
JavaScript中令你抓狂的魔术变量
2006/11/30 Javascript
js宝典学习笔记(上)
2007/01/10 Javascript
Javascript 面向对象 重载
2010/05/13 Javascript
自己动手开发jQuery插件教程
2011/08/25 Javascript
正负小数点后两位浮点数实现原理及代码
2013/09/06 Javascript
jQuery简单设置文本框回车事件的方法
2016/08/01 Javascript
JavaScript使用forEach()与jQuery使用each遍历数组时return false 的区别
2016/08/26 Javascript
有关JS中的0,null,undefined,[],{},'''''''',false之间的关系
2017/02/14 Javascript
NodeJS学习笔记之Module的简介
2017/03/24 NodeJs
详解如何使用Vue2做服务端渲染
2017/03/29 Javascript
JS实现问卷星自动填问卷脚本并在两秒自动提交功能
2020/06/17 Javascript
浅谈VUE监听窗口变化事件的问题
2018/02/24 Javascript
微信小程序实现分享到朋友圈功能
2018/07/19 Javascript
jQuery实现的简单拖拽功能示例【测试可用】
2018/08/14 jQuery
Vue循环组件加validate多表单验证的实例
2018/09/18 Javascript
微信小程序实现多个按钮的颜色状态转换
2019/02/15 Javascript
vue中nextTick用法实例
2019/09/11 Javascript
JavaScript如何把两个数组对象合并过程解析
2019/10/10 Javascript
vue 通过绑定事件获取当前行的id操作
2020/07/27 Javascript
npm ci命令的基本使用方法
2020/09/20 Javascript
举例讲解Linux系统下Python调用系统Shell的方法
2015/11/07 Python
python数据类型_字符串常用操作(详解)
2017/05/30 Python
PyQt5实现无边框窗口的标题拖动和窗口缩放
2018/04/19 Python
Python直接赋值、浅拷贝与深度拷贝实例分析
2019/06/18 Python
Django REST Framework序列化外键获取外键的值方法
2019/07/26 Python
python如何随机生成高强度密码
2020/08/19 Python
python 实现汉诺塔游戏
2020/11/28 Python
原生canvas制作画图小工具的踩坑和爬坑
2020/06/09 HTML / CSS
美国指甲油品牌:Deco Miami
2017/01/30 全球购物
大学生职业生涯规划范文
2014/01/08 职场文书
学校领导班子群众路线整改措施
2014/09/16 职场文书
蓬莱阁导游词
2015/02/04 职场文书
九九重阳节致辞
2015/07/31 职场文书