zoukankan      html  css  js  c++  java
  • 零基础学python-10.2 多目标赋值与变量命名规则

    1.多目标赋值

    >>> a=b=c='abc'
    >>> a,b,c
    ('abc', 'abc', 'abc')
    >>> 


    2.多目标赋值与共享引用

    对于不可变对象是没有问题,但是对于可变对象,这里就有问题的了

    >>> a=1
    >>> b=a
    >>> b=a+1
    >>> id(a)
    505991632
    >>> id(b)
    505991648
    >>> 


    上面的例子ab都是不可变的整形,所以当b改变的时候其实b指向的对象已经重新创建了

    >>> a=b=[]
    >>> b.append (1)
    >>> a,b
    ([1], [1])
    >>> 


    由于列表是可变的,ab共同指向同一个列表,所以当b改变的时候,a也改变

    3.增强赋值

    增强赋值就是使用+=,>=等操作符赋值,下面是两个例子

    >>> x=1
    >>> x+=1
    >>> x
    2
    >>> 


     

    >>> aList=[1,2]
    >>> aList=aList+[3]
    >>> aList
    [1, 2, 3]
    >>> aList.append (4)
    >>> aList
    [1, 2, 3, 4]
    >>> aList.extend ([5,6])
    >>> aList
    [1, 2, 3, 4, 5, 6]
    >>> aList+=[7,8]
    >>> aList
    [1, 2, 3, 4, 5, 6, 7, 8]
    >>> 

    4.增强赋值与共享引用

    下面的例子是,增强赋值使用+=,这里增强赋值隐含着在原处修改的意思,大家需要注意

    >>> aList=[1,2]
    >>> bList=aList
    >>> aList=aList+[3,4]
    >>> aList,bList
    ([1, 2, 3, 4], [1, 2])
    >>> aList=[1,2]
    >>> bList=aList
    >>> aList+=[3,4]
    >>> aList,bList
    ([1, 2, 3, 4], [1, 2, 3, 4])
    >>> 


    上面的例子可以看见,如果使用+表达式,只是某个对象修改,但是使用+=,两个List同时修改

    5.变量命名规则

    1)语法:下划线或者字符+任意数目的字母、数字或下划线

    2)区分大小写,a与A是两个不同的变量

    3)禁用保留字(具体查询python手册)

    注意:命名规则会延伸到文件名的命名,如果文件名不符合变量命名规则,在导入的时候就会出现错误

    就说到这里,谢谢大家

    ------------------------------------------------------------------

    点击跳转零基础学python-目录


     

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    speex库音频降噪(含代码)
    语音增强(降噪)之一——谱减法
    CUDA与OpenGL互操作
    二维图像的三维旋转
    迷惑很久,仅以个人想法谈谈MVC架构,希望大家多给点意见
    Less使用心得
    js实现蛇形矩阵
    H5天气查询demo(二)
    HTML5 Shim
    html5发展的里程碑事件
  • 原文地址:https://www.cnblogs.com/raylee2007/p/4774464.html
Copyright © 2011-2022 走看看