当前位置: 首页 > news >正文

Python快速编程小案例--逢7拍手小游戏

提示:(个人学习),案例来自工业和信息化“十三五”人才培养规划教材,《Python快速编程入门》第2版,黑马程序员◎编著


逢7拍手游戏的规则是:从1开始顺序数数,数到有7或者包含7的倍数的时候拍手。本实例要求编写程序,模拟实现逢七拍手游戏,输出 100 以内需要拍手的数字。

一、实例目标

  • for 循环与 range()函数的使用
  • 字符串中find()方法的使用

二、实例分析

  • 是否为7的倍数,即一个数取模值为0。
  • 是否包含7,使用 findO方法判断,当返回值为-1时表示不包含7。

三、代码实现

for i in range(1, 101):# 判断条件:既不包含7,也不是7的倍数if "7" in str(i) or i % 7 == 0:# 输出 *,去掉了换行符print('*', end='、')else:# 如果不包含7且不是7的倍数,输出数字print(i, end='、')

四、运行结果

6e039945a2ab43ed89f01c9021f92e0b.png

五、代码解释

这段代码的目的是遍历1到100(包含1和100)之间的所有整数,并检查每个数字是否满足两个条件:一是不包含数字7,二不是7的倍数。对于不满足这两个条件之一(即包含7或是7的倍数)的数字,它输出一个星号(*),否则输出该数字本身。所有输出项之间用顿号(、)分隔,而不是默认的换行符。

(一)、for i in range(1, 101):

这行代码使用for循环遍历从1到100的整数(range(1, 101)生成一个从1开始到100结束的序列,包含1和100)。

(二)、if "7" in str(i) or i % 7 == 0:

这行代码判断当前数字i是否包含数字7或是7的倍数。str(i)将数字i转换为字符串,以便使用in关键字检查字符串中是否包含字符'7'。i % 7 == 0是一个条件表达式,用于检查i除以7的余数是否为0,即i是否是7的倍数。如果这两个条件中的任何一个为真(即i包含7或是7的倍数),则执行下一行代码。

(三)、print('*', end='、')

如果上述条件为真,这行代码将输出一个星号(*),并通过end='、'参数指定输出后不换行,而是以顿号(、)作为结束符。

(四)、else:

如果上述条件为假(即i既不包含7也不是7的倍数),则执行else块中的代码。

(五)、print(i, end='、')

在else块中,这行代码输出当前的数字i,同样通过end='、'参数指定输出后不换行,以顿号(、)作为结束符。

综上所述,这段代码的输出将是从1到100的所有整数,其中包含7的数字和7的倍数被替换为星号(*),所有输出项之间用顿号(、)分隔。

六、总结

逢七拍手游戏是一个简单而有趣的数学游戏,其规则是从1开始顺序数数,每当遇到包含数字7或者是7的倍数的数字时,不直接说出该数字,而是通过拍手来代替。这个游戏不仅考验了玩家的反应速度和数学计算能力,还增加了数数的趣味性。

  • 在实现这个游戏的编程实例中,我们编写了一个程序来模拟逢七拍手游戏的过程,并输出100以内需要拍手的数字。程序通过遍历1到100之间的所有整数,对每个数字进行检查,判断其是否包含数字7或者是7的倍数。如果是,则将该数字视为需要拍手的数字,并将其输出。
  • 具体来说,程序使用了循环结构和条件判断来实现这一功能。循环结构用于遍历1到100之间的所有整数,而条件判断则用于检查每个数字是否满足包含7或者是7的倍数的条件。当条件满足时,程序会输出该数字,表示需要拍手。

通过这个编程实例,我们不仅实现了逢七拍手游戏的功能,还进一步加深了对循环结构、条件判断等编程概念的理解。同时,这个游戏也提醒我们在日常生活中要善于发现和利用数学规律,让我们的生活更加有趣和丰富。


!仅供参考

 


http://www.mrgr.cn/news/49017.html

相关文章:

  • 【LeetCode】动态规划—96. 不同的二叉搜索树(附完整Python/C++代码)
  • jvm介绍
  • 【ICPC】The 2024 ICPC Kunming Invitational Contest J
  • Kubernetes 实战之旅:从 0 到 1 搭建完整集群的奇妙征程
  • 计算机毕设选题推荐【人工智能专业】
  • [论文精读]Active and Semi-Supervised Graph Neural Networks for Graph Classification
  • 交叉编译--目标平台aarch64 ubuntu 22.04
  • 【AI绘画】Midjourney进阶:三分线构图详解
  • (全网独家)面试要懂运维真实案例:HDFS重新平衡(HDFS Balancer)没触发问题排查
  • 【C++】map和set的介绍以及用法
  • 记录使用appium+夜神模拟器测试多设备时selenium和appium版本不兼容带来的问题
  • 限界上下文(Bounded Context)
  • 开发指南072-模型定义
  • 【Power Query】List.Max List.Min
  • unpacking
  • 软考高级软件架构师论文——论Web系统的测试技术及其应用
  • 力扣刷题之3158.求出出现两次数字的XOR值
  • javaScripts 知识点一 (面试题)
  • InfluxDB持久层封装
  • 全能PDF工具集 | PDF Shaper Ultimate v14.6 便携版