Python中自增/自减步骤与print函数的执行顺序问题
执行顺序结论
在给出的这段Python代码中,index += 1自增操作在print(sum)之前执行。
Python的while循环体没有隐式的执行顺序规则,同缩进层级的代码严格按照从上到下的书写顺序依次执行,不存在其他语言for循环中增量表达式固定在循环体末尾执行的特殊逻辑。
示例代码
my_list=[1,2,3,4,5,6,7,8,9] sum=0 index=0 while sum<10: sum+=my_list[index] index+=1 print(sum)
逐轮执行流程拆解
循环初始状态:sum=0、index=0,满足sum<10的进入条件,后续每轮循环执行顺序如下:
- 第1轮循环
- 先执行
sum += my_list[index],sum更新为1 - 再执行
index +=1,index更新为1 - 最后执行
print(sum),控制台输出1
- 先执行
- 第2轮循环:sum=1满足进入条件
- sum累加my_list[1]的值,更新为3
- index自增为2
- 打印sum,输出3
- 第3轮循环:sum=3满足进入条件
- sum累加my_list[2]的值,更新为6
- index自增为3
- 打印sum,输出6
- 第4轮循环:sum=6满足进入条件
- sum累加my_list[3]的值,更新为10
- index自增为4
- 打印sum,输出10
- 循环条件判断:当前sum=10不满足
sum<10要求,循环直接终止
注:如果需要实现先打印再自增的逻辑,只需要把
print(sum)语句移动到index +=1语句的上方即可。
内容的提问来源于stack exchange,提问作者Yrkeb
相关产品推荐
相关产品推荐

