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 27 Python
Python的词法分析与语法分析
May 18 Python
Python 字符串操作实现代码(截取/替换/查找/分割)
Jun 08 Python
使用Python的Flask框架实现视频的流媒体传输
Mar 31 Python
使用Python设计一个代码统计工具
Apr 04 Python
对python中的logger模块全面讲解
Apr 28 Python
Python爬虫框架scrapy实现downloader_middleware设置proxy代理功能示例
Aug 04 Python
python 利用pandas将arff文件转csv文件的方法
Feb 12 Python
cProfile Python性能分析工具使用详解
Jul 22 Python
python 多进程并行编程 ProcessPoolExecutor的实现
Oct 11 Python
python爬虫实现POST request payload形式的请求
Apr 30 Python
python批量更改目录名/文件名的方法
Apr 18 Python
Python 数据结构之十大经典排序算法一文通关
Python 的 sum() Pythonic 的求和方法详细
Oct 16 #Python
为了顺利买到演唱会的票用Python制作了自动抢票的脚本
Python 游戏大作炫酷机甲闯关游戏爆肝数千行代码实现案例进阶
Python实现老照片修复之上色小技巧
Python anaconda安装库命令详解
Python爬虫入门案例之爬取去哪儿旅游景点攻略以及可视化分析
You might like
声音就能俘获人心,蕾姆,是哪个漂亮小姐姐配音呢?
2020/03/03 日漫
一个简洁的PHP可逆加密函数(分享)
2013/06/06 PHP
php制作中间带自己定义图片二维码的方法
2014/01/27 PHP
PHP中的按位与和按位或操作示例
2014/01/27 PHP
php中 $$str 中 "$$" 的详解
2015/07/06 PHP
PHP进制转换实例分析(2,8,16,36,64进制至10进制相互转换)
2017/02/04 PHP
javascript document.compatMode兼容性
2010/02/23 Javascript
jquery实现table鼠标经过变色代码
2013/09/25 Javascript
jquery简单图片切换显示效果实现方法
2015/01/14 Javascript
JS实现同时搜索百度和必应的方法
2015/01/27 Javascript
jQuery切换所有复选框选中状态的方法
2015/07/02 Javascript
JS代码随机生成姓名、手机号、身份证号、银行卡号
2016/04/27 Javascript
全面了解函数声明与函数表达式、变量提升
2016/08/09 Javascript
jQuery获取this当前对象子元素对象的方法
2016/11/29 Javascript
BootStrap实现文件上传并带有进度条效果
2017/09/11 Javascript
JS实现DOM节点插入操作之子节点与兄弟节点插入操作示例
2018/07/30 Javascript
jQuery实现轮播图源码
2019/10/23 jQuery
[56:42]完美世界DOTA2联赛循环赛 Matador vs Forest 第二场 11.06
2020/11/06 DOTA
python安装与使用redis的方法
2016/04/19 Python
Python脚本实现12306火车票查询系统
2016/09/30 Python
python在每个字符后添加空格的实例
2018/05/07 Python
python中ASCII码和字符的转换方法
2018/07/09 Python
python实现Flappy Bird源码
2018/12/24 Python
python time.sleep()是睡眠线程还是进程
2019/07/09 Python
python生成任意频率正弦波方式
2020/02/25 Python
详解Python中import机制
2020/09/11 Python
python输入中文的实例方法
2020/09/14 Python
超酷炫 CSS3垂直手风琴菜单
2016/06/28 HTML / CSS
HTML5播放实现rtmp流直播
2020/06/16 HTML / CSS
小区门卫工作职责
2013/12/14 职场文书
致800米运动员广播稿
2014/02/16 职场文书
会计岗位职责范本
2014/03/07 职场文书
职位证明模板
2015/06/23 职场文书
2016读书月活动心得体会
2016/01/14 职场文书
工伤调解协议书
2016/03/21 职场文书
MySQL 数据类型选择原则
2021/05/27 MySQL