为了账号安全,请及时绑定邮箱和手机立即绑定

为什么循环内的“num = 1”没有增加?

为什么循环内的“num = 1”没有增加?

扬帆大鱼 2022-08-25 15:03:35
我正在调试代码,我不明白为什么for循环内的num变量没有递增,只有(1)在递增?def numpat(n):    num = 1                            ----- (1)    for i in range(n):        num = 1                        ------ (2)        for j in range(i + 1):            print(num, end=" ")            num = num + 1               ----- (3)        print("\r")
查看完整描述

2 回答

?
叮当猫咪

TA贡献1776条经验 获得超12个赞

下面的输出不是你期望的吗?


In [1]: n = 5                                                                                 


In [2]: for i in range(n): 

   ...:  

   ...:     num = 1 

   ...:  

   ...:     for j in range(i + 1): 

   ...:         print(num, end=" ") 

   ...:         num = num + 1 

   ...:  

   ...:     print("\r") 

   ...:                                                                                       

1 2 

1 2 3 

1 2 3 4 

1 2 3 4 5

编辑:如果 n=1 不在内部循环中,则反事实输出。


In [1]: n = 5                                                                   


In [2]: num = 1                                                                 


In [3]: for i in range(n): 

   ...:     for j in range(i + 1): 

   ...:         print(num, end=" ") 

   ...:         num = num + 1 

   ...:     print("\r") 

   ...:                                                                         

2 3 

4 5 6 

7 8 9 10 

11 12 13 14 15


查看完整回答
反对 回复 2022-08-25
?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

因为您每次在第一个循环之后将值设置为 1,即 .您可以忽略该步骤,它将正常工作。numfor i in range(n):



查看完整回答
反对 回复 2022-08-25
  • 2 回答
  • 0 关注
  • 81 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信