loops - 我想我已经为自己复杂化了
问题描述
所以我正在练习简单的python作为学校的修订版,并且遇到了挑战“编写一个要求用户输入数字的算法。然后程序应该从0开始计数,并且对于每个其他数字它应该输出“Boo”。
for count in range(count,10):
print(count)
count +=2
if count % 2 == 0:
print("boo")
这就是我试图使用的东西,我把它弄乱了一点,试图让它工作,但由于某种原因,我想不出正确的方法。
解决方案
这是一个解决方案:
for num in range(0, count + 1):
if num % 2 == 0:
print(num)
else:
print("boo")
让我们看看每一行:
for num in range(0, count + 1):
左边的数字range
是起点。右边的数字是它计数的数字。
我改为count
以num
消除语法中的一些混乱。该range
函数创建一个从 0 到 (n - 1) 的数字列表,因此我将 1 加到 count 中,因此它将计数到 n 而不是 n - 1。
if num % 2 == 0:
print(num)
else:
print("boo")
num % 2
检查一个数字是否是偶数。从技术上讲,0 将被视为“偶数”,因为 0 % 2 = 0。因为算法以 0 开头,所以我们将打印 num,而每隔一个 num(奇数)将打印“boo”
推荐阅读
- r - 没有使用 geom_roc() 绘制 ROC 曲线
- c - 编译 OpenCL HelloWorld 程序:链接器错误
- node.js - 如何在 node.js socket.send 回调中发送更多 UDP 数据报?
- reactjs - 从 *.scss 文件生成 *.d.ts
- reactjs - 只有当父组件的按钮 Submit 被点击两次时,子组件才会重新渲染
- swift - 为什么我不能从这个 https 请求中收到价值?
- ruby-on-rails - ActionMailer 发出的 SMTP 请求是什么样的?
- ruby - 何时使用关键字参数和选项哈希?
- ruby - 如何创建函数 .find_by_label(x),相当于 .find_by(label: x)?
- java - Junit 测试缺少的测试