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 相关文章推荐
python快速排序代码实例
Nov 21 Python
python中pygame模块用法实例
Oct 09 Python
python实现端口转发器的方法
Mar 13 Python
使用Python脚本来控制Windows Azure的简单教程
Apr 16 Python
python常见的格式化输出小结
Dec 15 Python
Python使用Pandas对csv文件进行数据处理的方法
Aug 01 Python
python禁用键鼠与提权代码实例
Aug 16 Python
python Web flask 视图内容和模板实现代码
Aug 23 Python
Pytorch 定义MyDatasets实现多通道分别输入不同数据方式
Jan 15 Python
pygame实现弹球游戏
Apr 14 Python
Python 详解通过Scrapy框架实现爬取CSDN全站热榜标题热词流程
Nov 11 Python
Python matplotlib安装以及实现简单曲线的绘制
Apr 26 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 5.0对象模型深度探索之类的静态成员
2008/03/27 PHP
php数组查找函数总结
2014/11/18 PHP
php注册登录系统简化版
2020/12/28 PHP
Yii实现简单分页的方法
2016/04/29 PHP
PHP实现提高SESSION响应速度的几种方法详解
2019/08/09 PHP
showModalDialog 和 showModelessDialog
2007/01/22 Javascript
初探jquery——表单应用范例
2007/02/20 Javascript
用JAVASCRIPT如何给<textarea></textarea>赋值
2007/04/20 Javascript
jquery 弹出登录窗口实现代码
2009/12/24 Javascript
JavaScript Event学习第七章 事件属性
2010/02/07 Javascript
jQuery ReferenceError: $ is not defined 错误的处理办法
2013/05/10 Javascript
Javascript实现简单的富文本编辑器附演示
2014/06/16 Javascript
JavaScript 事件绑定及深入
2015/04/13 Javascript
使用ngView配合AngularJS应用实现动画效果的方法
2015/06/19 Javascript
js代码实现无缝滚动(文字和图片)
2015/08/20 Javascript
jquery实现可关闭的倒计时广告特效代码
2015/09/02 Javascript
JS实现自定义简单网页软键盘效果代码
2015/11/05 Javascript
jQuery中常用动画效果函数(日常整理)
2016/09/17 Javascript
Bootstrap优化站点资源、响应式图片、传送带使用详解3
2016/10/14 Javascript
ES6中Proxy代理用法实例浅析
2017/04/06 Javascript
jQuery+PHP+Mysql实现抽奖程序
2020/04/12 jQuery
详解Webpack DLL用法以及功能
2017/07/11 Javascript
Vue2.0中集成UEditor富文本编辑器的方法
2018/03/03 Javascript
使用vue制作探探滑动堆叠组件的实例代码
2018/03/07 Javascript
如何为vue的项目添加单元测试
2018/12/19 Javascript
jquery实现动态改变css样式的方法分析
2019/05/27 jQuery
解决vue的过渡动画无法正常实现问题
2019/10/31 Javascript
JS面向对象之多选框实现
2020/01/17 Javascript
Python解析并读取PDF文件内容的方法
2018/05/08 Python
python程序变成软件的实操方法
2019/06/24 Python
Django 自定义权限管理系统详解(通过中间件认证)
2020/03/11 Python
解决keras使用cov1D函数的输入问题
2020/06/29 Python
Matlab使用Plot函数实现数据动态显示方法总结
2021/02/25 Python
八一建军节活动方案
2014/02/10 职场文书
党支部工作总结2015
2015/04/01 职场文书
2015质检员个人年终工作总结
2015/10/23 职场文书