python实现逢七拍腿小游戏的思路详解


Posted in Python onMay 26, 2020

逢七拍腿游戏

几个小朋友在一起玩逢七拍腿的游戏,从1开始数数,当数到7的倍数或者尾号是7时,拍一下腿。现在从1数到99,假设每个人都没有错,计算一下共要拍腿几次?
第一种实现思路:通过在for循环语句中使用continue语句来实现计算拍腿次数。首先假设可拍腿次数为最高次数99,每触发满足的条件的时候就直接跳转到下一次循环当中,最后的total减1则不执行,不满足条件时total则减1。因此实际上total减去的是不满足条件的数字,代码如下:

total = 99               #记录拍腿次数的变量
for number in range(1,100):      #创建一个从1数到99的循环
  if number&7 == 0:         #判断是否为7的倍数
    continue            #跳转到下一次循环
  else: 
    string = str(number)      #将数值转化为字符串,方便判断尾号是否为7
    if string.endswith('7'):    #判断尾号数字是否为7
      continue          #跳转到下一次循环
  total -= 1             #可拍腿次数减1
print("从1数到99共拍腿",total,"次")   #显示拍腿次数

在此处我们新学到一个函数为endswith(),我们先来讨论一下endswith()函数的作用。

函数:endswith()
作用:判断字符串是否以指定字符或子字符串结尾,常用于判断文件类型
相关函数:判断字符串开头 startswith()

运行结果如下:

python实现逢七拍腿小游戏的思路详解

第二种实现思路:通过设置一个计数器,每触发条件一次计数器就加1.代码如下:

total = 0               #记录拍腿次数的变量
for number in range(1,100):      #创建一个从1数到99的循环
  if number&7 == 0:         #判断是否为7的倍数
     total +=1          #可拍腿次数加1次
  else: 
    string = str(number)      #将数值转化为字符串,方便判断尾号是否为7
    if string.endswith('7'):    #判断尾号数字是否为7
      total +=1         #可拍腿次数加1次              
print("从1数到99共拍腿",total,"次")  #显示拍腿次数

这两种方法都可以实现,很有趣的是第一种实际上是一种逆向的思维,我们已经习惯于加法,很少会使用到减法。第二种是我们很多人习惯的思考方式。在学习python的过程当中,多发散一下思维,有时候逆向地思考也可以达到要实现的目的,甚至会更快!

总结

到此这篇关于python实现逢七拍腿小游戏的思路详解的文章就介绍到这了,更多相关python实现逢七拍腿小游戏内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
使用wxPython获取系统剪贴板中的数据的教程
May 06 Python
python学习之编写查询ip程序
Feb 27 Python
Python自定义函数定义,参数,调用代码解析
Dec 27 Python
Python即时网络爬虫项目启动说明详解
Feb 23 Python
NumPy 基本切片和索引的具体使用方法
Apr 24 Python
python实现批量视频分帧、保存视频帧
May 31 Python
在python下使用tensorflow判断是否存在文件夹的实例
Jun 10 Python
python 识别登录验证码图片功能的实现代码(完整代码)
Jul 03 Python
python开根号实例讲解
Aug 30 Python
python Selenium 库的使用技巧
Oct 16 Python
Python可以用来做什么
Nov 23 Python
使用gunicorn部署django项目的问题
Dec 30 Python
Python是什么 Python的用处
May 26 #Python
完美解决jupyter由于无法import新包的问题
May 26 #Python
使用pth文件添加Python环境变量方式
May 26 #Python
tensorflow实现残差网络方式(mnist数据集)
May 26 #Python
Python中格式化字符串的四种实现
May 26 #Python
使用tensorflow实现VGG网络,训练mnist数据集方式
May 26 #Python
浅谈Tensorflow加载Vgg预训练模型的几个注意事项
May 26 #Python
You might like
PHP strtotime函数详解
2009/12/18 PHP
使用php判断网页是否gzip压缩
2013/06/25 PHP
php实现源代码加密的方法
2015/07/11 PHP
PHP命名空间和自动加载类
2016/04/03 PHP
js ondocumentready onmouseover onclick onmouseout 样式
2010/07/22 Javascript
js 实现css风格选择器(压缩后2KB)
2012/01/12 Javascript
解释&&和||在javascript中的另类用法
2014/07/28 Javascript
javascript面向对象之this关键词用法分析
2015/01/13 Javascript
javascript中cookie对象用法实例分析
2015/01/30 Javascript
jQuery插件HighCharts绘制2D柱状图、折线图的组合双轴图效果示例【附demo源码下载】
2017/03/09 Javascript
Three.js获取鼠标点击的三维坐标示例代码
2017/03/24 Javascript
Bootstrap 表单验证formValidation 实现表单动态验证功能
2017/05/17 Javascript
jQuery实现简单的手风琴效果
2020/04/17 jQuery
node+koa2+mysql+bootstrap搭建一个前端论坛
2018/05/06 Javascript
webstorm+vue初始化项目的方法
2018/10/18 Javascript
使用webpack搭建vue环境的教程详解
2019/12/31 Javascript
python 多进程通信模块的简单实现
2014/02/20 Python
python实现简单socket程序在两台电脑之间传输消息的方法
2015/03/13 Python
用Pygal绘制直方图代码示例
2017/12/07 Python
Python字符串内置函数功能与用法总结
2019/04/16 Python
Python 线程池用法简单示例
2019/10/02 Python
jupyter notebook 多环境conda kernel配置方式
2020/04/10 Python
浅谈django channels 路由误导
2020/05/28 Python
分享CSS3制作卡片式图片的方法
2016/07/08 HTML / CSS
详解html5页面 rem 布局适配方法
2018/01/12 HTML / CSS
英国水族馆和池塘用品购物网站:Warehouse Aquatics
2019/08/29 全球购物
日语专业毕业生自荐信
2013/11/11 职场文书
生产现场工艺工程师岗位职责
2013/11/28 职场文书
运动会邀请函范文
2014/02/06 职场文书
分公司负责人任命书
2014/06/04 职场文书
党员转正党支部意见
2015/06/02 职场文书
小学生手册家长意见
2015/06/03 职场文书
悬崖上的金鱼姬观后感
2015/06/15 职场文书
nginx location中多个if里面proxy_pass的方法
2021/03/31 Servers
Python OpenCV超详细讲解读取图像视频和网络摄像头
2022/04/02 Python
Mysql排查分析慢sql之explain实战案例
2022/04/19 MySQL