python找茬系列15-赋值语句

一、小试牛刀

def fib(n):
    a, b = 1, 1
    for i in range(n - 1):
        a, b = b, a + b
    return a

print(fib(7))

输出结果:

13

二、分析

1、难点

 a, b = 1, 2
 a, b = b, a + b

上述写法称为同步赋值语句

2、赋值语句

【1】python普通赋值语句

例如:

a = 1
b = 2
print(a + b)

【2】python同步赋值语句:让代码更简洁

同步赋值可以完成同时对多个变量进行赋值,即,再把各个表达式结果的值赋值给左侧对应位置的变量。

3、区别

1

a, b = 1, 1
a, b = b, a + b

图解:

python找茬系列15-赋值语句_第1张图片
图.png

同步赋值语句,a赋值为b时,a的值还没改变

2

a, b = 1, 1
a = b
b = a + b

图解:

python找茬系列15-赋值语句_第2张图片
图解.png

非同步赋值语句,语句是按顺序执行,a = b,这时a的值已经改变

你可能感兴趣的:(python找茬系列15-赋值语句)