python找茬系列15-赋值语句

2019-08-06  本文已影响0人  young十三

一、小试牛刀

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普通赋值语句
\color{red}{<变量> = <表达式>}
例如:

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

【2】python同步赋值语句:让代码更简洁
\color{red}{<变量1> ,...,<变量N>= <表达式1>,...,<表达式N>}

同步赋值可以完成同时对多个变量进行赋值,\color{red}{先计算‘=’右侧的多个表达式},再把各个表达式结果的值赋值给左侧对应位置的变量。

3、区别

1

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

图解:

图.png

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

2

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

图解:

图解.png

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

上一篇下一篇

猜你喜欢

热点阅读