逢七拍腿游戏
几个小朋友在一起玩逢七拍腿的游戏,从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的过程当中,多发散一下思维,有时候逆向地思考也可以达到要实现的目的,甚至会更快!
总结
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
白云城资源网 Copyright www.dyhadc.com
暂无“python实现逢七拍腿小游戏的思路详解”评论...
更新日志
2024年11月08日
2024年11月08日
- 雨林唱片《赏》新曲+精选集SACD版[ISO][2.3G]
- 罗大佑与OK男女合唱团.1995-再会吧!素兰【音乐工厂】【WAV+CUE】
- 草蜢.1993-宝贝对不起(国)【宝丽金】【WAV+CUE】
- 杨培安.2009-抒·情(EP)【擎天娱乐】【WAV+CUE】
- 周慧敏《EndlessDream》[WAV+CUE]
- 彭芳《纯色角3》2007[WAV+CUE]
- 江志丰2008-今生为你[豪记][WAV+CUE]
- 罗大佑1994《恋曲2000》音乐工厂[WAV+CUE][1G]
- 群星《一首歌一个故事》赵英俊某些作品重唱企划[FLAC分轨][1G]
- 群星《网易云英文歌曲播放量TOP100》[MP3][1G]
- 方大同.2024-梦想家TheDreamer【赋音乐】【FLAC分轨】
- 李慧珍.2007-爱死了【华谊兄弟】【WAV+CUE】
- 王大文.2019-国际太空站【环球】【FLAC分轨】
- 群星《2022超好听的十倍音质网络歌曲(163)》U盘音乐[WAV分轨][1.1G]
- 童丽《啼笑姻缘》头版限量编号24K金碟[低速原抓WAV+CUE][1.1G]