python - 在while循环中初始化
问题描述
我是 python 新手,无法理解下面的代码片段。我不明白为什么 sum 被初始化为 0,而不是 1。谁能解释这个初始化?
n = 4
sum = 0 # initialize sum
i = 1 # initialize counter
while i <= n:
sum = sum + i
i = i+1 # update counter
print("The sum is", sum)
解决方案
Sum 初始化为零,但是因为小于或等于 n 和 i 你总是运行至少一个循环,取 i = 1,那么 sum 仍然是 1,因为循环检查 1 是否小于或等于 1 (i <= n)。因为是这样,所以它将 i 添加到总和(即 1)中,使总和为 1。然后将 i 更新为 2 并进入 while 循环的顶部。因为 2 <= 1 或 i <= n 在这里是假的,所以它会爆发并打印一个作为总和
推荐阅读
- node.js - Node.js:CSV 在 mac os(数字)上正确显示,但在 windows(excel)上显示全部混乱
- python - 将 CNN 的输出传递给 BILSTM
- python - 将列表中的值映射到没有时间顺序的已知字典格式
- c# - 如何在 docker 容器中运行这个 PowerShell 脚本?
- google-apps-script - Google Apps 脚本执行时间问题
- c# - 如何将配置部分传递给库项目中的 services.Configure()?
- javascript - JavaScript Date.getFullYear() returnin Nan - 仅在 FireFox 中
- javascript - 如果在给定的时间范围内多次调用相同的方法,则取消旧的 Promise.resolve
- python - 如何使用 Ansible 记录 ansible_python_interpreter 失败的 IP?
- typescript - Nestjs 和控制器中的服务继承