Discuss / Python / 为什么最后两行不能反过来写?

为什么最后两行不能反过来写?

Topic source

有鱼多多

#1 Created at ... [Delete] [Delete and Lock User]

L = [] n = 1 while n <= 99: L.append(n) n = n + 2 最后两行调转一下顺序,会变成从3开始,到101结束。 为什么会这样?

JallicleCat

#2 Created at ... [Delete] [Delete and Lock User]

反过来还是1到99的奇数啊,没出现你说的这种情况

L = []
a = 1
while a <= 99:
    a += 2      #此时a = 3,在L没有生成列表的时候a已经加2了
    L.append(a) 
print(L) #打印L时就是3,5,7,9……97,99,101
L = []
a = 1
while a <= 99:
    L.append(a)
    a += 2   #在a加2的时候,L已经生成列表了
print(L) #打印L时就是1,3,5,7,9……95,97,99

  • 1

Reply