美文网首页
python找茬系列15-赋值语句

python找茬系列15-赋值语句

作者: young十三 | 来源:发表于2019-08-06 07:58 被阅读0次

    一、小试牛刀

    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找茬系列15-赋值语句

          本文链接:https://www.haomeiwen.com/subject/okhmdctx.html