python实现逢七拍腿小游戏的思路详解
作者:RABBIt.J 时间:2021-02-28 23:44:29
逢七拍腿游戏
几个小朋友在一起玩逢七拍腿的游戏,从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()
运行结果如下:
第二种实现思路:通过设置一个计数器,每触发条件一次计数器就加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的过程当中,多发散一下思维,有时候逆向地思考也可以达到要实现的目的,甚至会更快!
来源:https://blog.csdn.net/weixin_43976376/article/details/106337897
标签:python,逢七拍腿,小游戏
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
python使用yaml 管理selenium元素的示例
2023-11-18 10:53:29
![](https://img.aspxhome.com/file/2023/9/79579_0s.png)
SQL Server中应当怎样得到自动编号字段
2009-01-15 12:48:00
BootStrap学习笔记之nav导航栏和面包屑导航
2023-08-16 12:33:22
ASP.NET 2.0中的数据操作之九:跨页面的主/从报表
2023-07-19 20:28:42
![](https://img.aspxhome.com/file/2023/5/75525_0s.png)
用css3-tranistions实现平滑过渡
2009-12-23 19:24:00
Python使用循环神经网络解决文本分类问题的方法详解
2022-12-01 16:49:05
![](https://img.aspxhome.com/file/2023/4/80804_0s.png)
tensorflow ckpt模型和pb模型获取节点名称,及ckpt转pb模型实例
2021-05-23 10:22:53
Mysql数据库备份和还原常用的命令
2011-12-01 10:41:54
Python全栈之文件函数和函数参数
2023-05-11 02:28:21
Python 相对路径报错:"No such file or directory"'原因及解决方法
2021-08-12 05:34:00
![](https://img.aspxhome.com/file/2023/5/66865_0s.png)
python实现批量转换文件编码(批转换编码示例)
2023-07-28 22:03:47
FSO组件之文件操作(中)
2010-05-03 11:05:00
用户体验在商业利益面前什么都不是
2009-06-12 12:07:00
解析python中的jsonpath 提取器
2021-11-18 23:06:04
如何做好一份前端工程师的简历?
2009-02-17 12:52:00
解析一个通过添加本地分区索引提高SQL性能的案例
2023-07-22 13:29:32
Python导入数值型Excel数据并生成矩阵操作
2023-05-15 16:59:24
![](https://img.aspxhome.com/file/2023/3/64263_0s.jpg)
详解Python中的自定义密码验证
2021-06-05 00:38:59
sql server数据库最大Id冲突问题解决方法之一
2012-01-05 19:28:42
jQuery 1.3.3 新功能[译]
2009-06-04 12:23:00