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之PyUnit单元测试实例
Oct 11 Python
pymongo实现多结果进行多列排序的方法
May 16 Python
python实现数独算法实例
Jun 09 Python
浅谈python中copy和deepcopy中的区别
Oct 23 Python
python模块smtplib学习
May 22 Python
在PyCharm中三步完成PyPy解释器的配置的方法
Oct 29 Python
Python中修改字符串的四种方法
Nov 02 Python
如何使用Python实现斐波那契数列
Jul 02 Python
Python实现TCP探测目标服务路由轨迹的原理与方法详解
Sep 04 Python
Python读取分割压缩TXT文本文件实例
Feb 14 Python
Python 在函数上添加包装器
Jul 28 Python
python 第三方库paramiko的常用方式
Feb 20 Python
Python 数据结构之十大经典排序算法一文通关
Python 的 sum() Pythonic 的求和方法详细
Oct 16 #Python
为了顺利买到演唱会的票用Python制作了自动抢票的脚本
Python 游戏大作炫酷机甲闯关游戏爆肝数千行代码实现案例进阶
Python实现老照片修复之上色小技巧
Python anaconda安装库命令详解
Python爬虫入门案例之爬取去哪儿旅游景点攻略以及可视化分析
You might like
FCKeditor的安装(PHP)
2007/01/13 PHP
PHP 开源框架22个简单简介
2009/08/24 PHP
PHP GD库生成图像的几个函数总结
2014/11/19 PHP
解决php的“It is not safe to rely on the system’s timezone settings”问题
2015/10/08 PHP
Adnroid 微信内置浏览器清除缓存
2016/07/11 PHP
CCPry JS类库 代码
2009/10/30 Javascript
让ie运行js时提示允许阻止内容运行的解决方法
2010/10/24 Javascript
JavaScript中的作用域链和闭包
2012/06/30 Javascript
JS动态添加Table的TR,TD实现方法
2015/01/28 Javascript
javascript制作2048游戏
2015/03/30 Javascript
深入理解JavaScript中为什么string可以拥有方法
2016/05/24 Javascript
JavaScript实现Java中Map容器的方法
2016/10/09 Javascript
概述jQuery的元素筛选
2016/11/23 Javascript
JavaScript笛卡尔积超简单实现算法示例
2018/07/30 Javascript
详解async/await 异步应用的常用场景
2019/05/13 Javascript
如何在Vue.JS中使用图标组件
2020/08/04 Javascript
[01:14]TI珍贵瞬间系列(六):冠军
2020/08/30 DOTA
python的tkinter布局之简单的聊天窗口实现方法
2014/09/03 Python
跟老齐学Python之使用Python操作数据库(1)
2014/11/25 Python
python遍历数组的方法小结
2015/04/30 Python
Python统计文件中去重后uuid个数的方法
2015/07/30 Python
浅谈pyhton学习中出现的各种问题(新手必看)
2017/05/17 Python
Python实现对百度云的文件上传(实例讲解)
2017/10/21 Python
Python queue队列原理与应用案例分析
2019/09/27 Python
浅谈PyQt5中异步刷新UI和Python多线程总结
2019/12/13 Python
CSS3实现swap交换动画
2016/01/19 HTML / CSS
Javascript 高级手势使用介绍
2013/04/21 HTML / CSS
英国在线自行车商店:Evans Cycles
2016/09/26 全球购物
文秘专业毕业生就业推荐信
2013/11/08 职场文书
办公室打字员岗位职责
2014/04/16 职场文书
2014年党的群众路线整改措施思想汇报
2014/10/12 职场文书
教师政风行风自查自纠报告
2014/10/21 职场文书
2014年财政局工作总结
2014/12/09 职场文书
学雷锋活动简报
2015/07/20 职场文书
祝福语集锦:送给毕业同学祝福语
2019/11/21 职场文书
浅谈自定义校验注解ConstraintValidator
2021/06/30 Java/Android