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普通赋值语句
\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的值已经改变

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、Python简介和环境搭建以及pip的安装 4课时实验课主要内容 【Python简介】: Python 是一个...
    _小老虎_阅读 11,131评论 0 10
  • 在C语言中,五种基本数据类型存储空间长度的排列顺序是: A)char B)char=int<=float C)ch...
    夏天再来阅读 8,729评论 0 2
  • http://python.jobbole.com/85231/ 关于专业技能写完项目接着写写一名3年工作经验的J...
    燕京博士阅读 12,223评论 1 118
  • (1474)班主任如何引导学生过一个有意义的暑假? 骄阳似火,蝉鸣阵阵,孩子们盼望已久的暑假到来了。虽说孩子的暑假...
    简静L阅读 1,326评论 0 0
  • 01 这个时代的年轻人,都快焦虑死了。 有个同学叫李大福,我月薪3000的时候,他月薪1w。我月薪还是3000的时...
    小影同学阅读 5,702评论 0 0