Python Can';I don’我不理解函数对数字求和的方式

Python Can';I don’我不理解函数对数字求和的方式,python,Python,我认为它是y=4+(3*0)=4然后y=4+(3*1)=7。但是13从哪里来呢 x=3 y=4 for i in range (10): y=y+x*i print(y) y每次迭代都会更改。因此,被替换为y+x*i的值也会发生变化 y = 4 + (3*0) = 4 ___________| ↓ y = 4 + (3*1) = 7 ___________| ↓ y = 7 + (3*2) = 13 ___________|

我认为它是
y=4+(3*0)=4
然后
y=4+(3*1)=7
。但是13从哪里来呢

x=3
y=4

for i in range (10):
    y=y+x*i
    print(y)

y
每次迭代都会更改。因此,被替换为
y+x*i
的值也会发生变化

y = 4 + (3*0) = 4
     ___________|
    ↓
y = 4 + (3*1) = 7
     ___________|
    ↓
y = 7 + (3*2) = 13
     ___________|
    ↓
y = 13 + (3*3) = 22

...

y是不断变化的,在i为1后,1变为7

您还需要在for循环中输入y=4

x=3

for i in range (10):
    y=4
    y=y+x*i
    print(y)
或者最好更改结果变量:

x=3
y=4

for i in range (10):
    a=y+x*i
    print(a)
第一个循环: i=0: y=4+(3*0)=4

第二个循环: i=1: y=4+(3*1)=7

第三圈: i=2:
y=7+(3*2)=13

y
不再是
4
y=7+(3*2)
13
y
的值在每次迭代中都会更改第一次迭代的
y=4+3*0
(4)。第二次迭代具有
y=4+3*1
(7)。第三次迭代具有
y=7+3*2
(13)。