python - 一个简单的 python 代码将用于迭代的循环变量与常量变量相乘会产生意想不到的结果
问题描述
我刚刚编写了一个非常简单的程序,每次迭代都应该将迭代变量与定义的变量相乘,然后打印结果。
x=1
>>> for i in range(3):
x *= i
print(x)
令我惊讶的是,它给出了:
0
0
0
为什么?它应该给出:
0
1
2
解决方案
x
在第一次迭代中乘以,i=0
因此 x 的值变为0
并且对于每次下一次迭代 0 xi = 0
这就是你真正想要做的
x = 1
for i in range(3):
print(x*i)
0
1
2
推荐阅读
- python - 无法从粗略的结果中分离出期望的结果
- javascript - 从 Javascript 在 MVC 中为 Post 方法创建 ViewModel
- java - Invalid sender Id while getting device token
- amazon-web-services - CloudWatch,如何仅监控一天中特定时间段的指标?
- arguments - Nagios - 如何在传递给 NRPE 服务器的参数中使用逻辑运算符
- haskell - Haskell:了解 Monad 的绑定运算符 (>>=)
- angular - PrimeNG - 从不同的鼠标点击中选择和取消选择行
- angular - IONIC 4 - 离子菜单不与页面重叠
- c++ - 如何有条件地链接范围::查看?
- ios - 如何打开 Instagram 查询方案以分享到故事?