窝在家里写程序 发表于 2020-6-17 19:21:23

求大神解答!!!

i = 1
while i <= 10:
    b = 1
    while b <=i:
      print('*')
      b +=1
    print(i)
    i += 1






i = 1
b = 1
while i <= 10:
    while b <=i:
      print('*')
      b +=1
    print(i)
    i += 1




为啥我这两个代码输出的结果完全不一样

冰河星云 发表于 2020-6-17 19:33:21

第一个是每一次循环都初始化b=1一次
第二个直接初始化了,没有再初始化b

heidern0612 发表于 2020-6-17 19:33:22

你第一个放在while循环里面,那每次循环b不重新赋值,又变成1了吗?

Twilight6 发表于 2020-6-17 19:52:38



第一个代码最外部的循环那有个 b = 1 所以每次循环都会重新赋值为 1

而第二个代码那没有,所以打印的结果不一样

窝在家里写程序 发表于 2020-6-17 19:56:33

Twilight6 发表于 2020-6-17 19:52
第一个代码最外部的循环那有个 b = 1 所以每次循环都会重新赋值为 1

而第二个代码那没有,所以打印 ...

第一次学编程不太懂不太会用所以还得多麻烦你们一下

窝在家里写程序 发表于 2020-6-17 19:57:04

heidern0612 发表于 2020-6-17 19:33
你第一个放在while循环里面,那每次循环b不重新赋值,又变成1了吗?

第一次学编程不太懂不太会用所以还得多麻烦你们一下{:5_109:}

窝在家里写程序 发表于 2020-6-17 19:57:36

冰河星云 发表于 2020-6-17 19:33
第一个是每一次循环都初始化b=1一次
第二个直接初始化了,没有再初始化b

第一次学编程不太懂不太会用所以还得多麻烦你们一下{:5_109:}
页: [1]
查看完整版本: 求大神解答!!!