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通过递归遍历出集合中所有元素的方法
Feb 25 Python
python下调用pytesseract识别某网站验证码的实现方法
Jun 06 Python
Python实现的多项式拟合功能示例【基于matplotlib】
May 15 Python
Python中的CSV文件使用"with"语句的方式详解
Oct 16 Python
Scrapy框架爬取西刺代理网免费高匿代理的实现代码
Feb 22 Python
python3.6编写的单元测试示例
Aug 17 Python
Python性能分析工具Profile使用实例
Nov 19 Python
Python破解BiliBili滑块验证码的思路详解(完美避开人机识别)
Feb 17 Python
Python如何执行精确的浮点数运算
Jul 31 Python
python获取命令行参数实例方法讲解
Nov 02 Python
Python快速优雅的批量修改Word文档样式
May 20 Python
Python加密与解密模块hashlib与hmac
Jun 05 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生成与读取excel文件
2016/10/14 PHP
php 与 nginx 的处理方式及nginx与php-fpm通信的两种方式
2018/09/28 PHP
PHP面向对象程序设计之构造方法和析构方法详解
2019/06/13 PHP
ThinkPHP框架结合Ajax实现用户名校验功能示例
2019/07/03 PHP
初识Node.js
2014/09/03 Javascript
浅析AngularJS中的生命周期和延迟处理
2015/06/18 Javascript
JavaScript模块化开发之SeaJS
2015/12/13 Javascript
JS对象的深度克隆方法示例
2017/03/16 Javascript
react 实现页面代码分割、按需加载的方法
2018/04/03 Javascript
微信小程序methods中定义的方法互相调用的实例代码
2018/08/07 Javascript
node微信开发之获取access_token+自定义菜单
2019/03/17 Javascript
vue实现图片懒加载的方法分析
2020/02/05 Javascript
[49:12]完美世界DOTA2联赛PWL S2 Magma vs GXR 第二场 11.29
2020/12/02 DOTA
在Python程序和Flask框架中使用SQLAlchemy的教程
2016/06/06 Python
python rsa 加密解密
2017/03/20 Python
python远程连接服务器MySQL数据库
2018/07/02 Python
pandas 根据列的值选取所有行的示例
2018/11/07 Python
浅析Python3中的对象垃圾收集机制
2019/06/06 Python
Django 开发环境配置过程详解
2019/07/18 Python
使用TensorFlow直接获取处理MNIST数据方式
2020/02/10 Python
python GUI编程(Tkinter) 创建子窗口及在窗口上用图片绘图实例
2020/03/04 Python
python函数中将变量名转换成字符串实例
2020/05/11 Python
如何完美的建立一个python项目
2020/10/09 Python
英国床和浴室商场:Bed & Bath Emporium
2018/05/20 全球购物
Jowissa官方网站:瑞士制造的手表,优雅简约的设计
2020/07/29 全球购物
实习护士自我鉴定
2013/10/13 职场文书
诚信考试倡议书
2014/04/15 职场文书
环保建议书200字
2014/05/14 职场文书
大学生违纪检讨书300字
2014/10/25 职场文书
长城导游词300字
2015/01/30 职场文书
清洁工岗位职责
2015/02/13 职场文书
大学毕业生个人总结
2015/02/28 职场文书
证婚人致辞精选
2015/07/28 职场文书
小学班级管理心得体会
2016/01/07 职场文书
详解MySQL的主键查询为什么这么快
2022/04/03 MySQL
python使用opencv对图像添加噪声(高斯/椒盐/泊松/斑点)
2022/04/06 Python