为什么两次结果不一样
>>> l=[75,92,59,68]
>>> x=0.0
>>> for y in l:
... print(y)
... sum=x+y
...
75
92
59
68
>>> print(sum/4)
17.0
>>> l=[75,92,59,68]
>>> sum=0.0
>>> for x in l:
... sum=sum+x
...
>>> print(sum/4)
73.5
>>> l=[75,92,59,68]
>>> x=0.0
>>> for y in l:
... print(y)
... sum=x+y
...
75
92
59
68
>>> print(sum/4)
17.0
>>> l=[75,92,59,68]
>>> sum=0.0
>>> for x in l:
... sum=sum+x
...
>>> print(sum/4)
73.5
2019-03-16
x=x+y
for 循环第一次的结果是,将75从数组里提出来。y = 75 然后运行x=x+y x=0.0+75 x=75。
第二次 for把92从list里提出来。y = 92 然后运行 x=x+y 此时的x在上一次for的结果是 75.。所以x=75+92 x=167
第三次 提取y= 59 x=167 x=x+y x= 226
第四次 提取y = 68 。x=226 x=x+y x=226+68 =294
for会运行4次。因为I 里有4个数值。
最终X的结果是294.这是4个数的和。平均就是除以4
所以 print x/4
所以 print(y)在此没有意义。
l=[75,92,59,68]
x=0.0
for y in l:
x=x+y #此行就是求和运算,配合for依次提取,累计相加。
print(x/4) #此行一定是不属于for语句之中的。要顶头写,不能有空格。如果在本行前加4个空格,结果会完全不一样。
举报