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 相关文章推荐
python实现博客文章爬虫示例
Feb 26 Python
kNN算法python实现和简单数字识别的方法
Nov 18 Python
Python实现连接postgresql数据库的方法分析
Dec 27 Python
python爬虫_实现校园网自动重连脚本的教程
Apr 22 Python
tensorflow: variable的值与variable.read_value()的值区别详解
Jul 30 Python
Python Pandas数据中对时间的操作
Jul 30 Python
Python根据服务获取端口号的方法
Sep 25 Python
pytorch加载自定义网络权重的实现
Jan 07 Python
python 实现音频叠加的示例
Oct 29 Python
基于python模拟TCP3次握手连接及发送数据
Nov 06 Python
解决selenium+Headless Chrome实现不弹出浏览器自动化登录的问题
Jan 09 Python
Python Pygame实战之塔防游戏的实现
Mar 17 Python
Python 数据结构之十大经典排序算法一文通关
Python 的 sum() Pythonic 的求和方法详细
Oct 16 #Python
为了顺利买到演唱会的票用Python制作了自动抢票的脚本
Python 游戏大作炫酷机甲闯关游戏爆肝数千行代码实现案例进阶
Python实现老照片修复之上色小技巧
Python anaconda安装库命令详解
Python爬虫入门案例之爬取去哪儿旅游景点攻略以及可视化分析
You might like
探讨:php中在foreach中使用foreach ($arr as &$value) 这种类型的解释
2013/06/24 PHP
php定时执行任务设置详解
2015/02/06 PHP
PHP响应post请求上传文件的方法
2015/12/17 PHP
基于JQuery的浮动DIV显示提示信息并自动隐藏
2011/02/11 Javascript
jquery中dom操作和事件的实例学习-表单验证
2011/11/30 Javascript
JavaScript面向对象设计二 构造函数模式
2011/12/20 Javascript
jquery删除提示框弹出是否删除对话框
2014/01/07 Javascript
JScript中的条件注释详解
2015/04/24 Javascript
Javascript基础之数组的使用
2016/05/13 Javascript
node.js支持多用户web终端实现及安全方案
2017/11/29 Javascript
深入浅析Vue中的 computed 和 watch
2018/06/06 Javascript
vue使用rem实现 移动端屏幕适配
2018/09/26 Javascript
js中call()和apply()改变指针问题的讲解
2019/01/17 Javascript
解决layui动态加载复选框无法选中的问题
2019/09/20 Javascript
layer.prompt使文本框为空的情况下也能点击确定的方法
2019/09/24 Javascript
通过实例解析javascript Date对象属性及方法
2020/11/04 Javascript
js实现限定区域范围拖拉拽效果
2020/11/20 Javascript
ES6字符串的扩展实例
2020/12/21 Javascript
在Python中操作字典之setdefault()方法的使用
2015/05/21 Python
详解Python的Django框架中Manager方法的使用
2015/07/21 Python
Python原始字符串与Unicode字符串操作符用法实例分析
2017/07/22 Python
Python中序列的修改、散列与切片详解
2017/08/27 Python
OpenCV2.3.1+Python2.7.3+Numpy等的配置解析
2018/01/05 Python
python 实现A*算法的示例代码
2018/08/13 Python
Pycharm设置去除显示的波浪线方法
2018/10/28 Python
对python3中, print横向输出的方法详解
2019/01/28 Python
python实现知乎高颜值图片爬取
2019/08/12 Python
JupyterNotebook 输出窗口的显示效果调整实现
2020/09/22 Python
html5使用html2canvas实现浏览器截图的示例
2017/08/31 HTML / CSS
德国骆驼商店:ActiveFashionWorld
2017/11/18 全球购物
总监职责范文
2013/11/09 职场文书
工作失职自我检讨书
2015/05/05 职场文书
第一书记观后感
2015/06/08 职场文书
jquery插件实现悬浮的菜单
2021/04/24 jQuery
php png失真的原因及解决办法
2021/10/24 PHP
Linux、ubuntu系统下查看显卡型号、显卡信息详解
2022/04/07 Servers