python学习笔记八--动态类型

一。变量,对象,引用:

     1. 变量:

     2. 对象:均包含了一个头部信息,有以下两部分内容

            a.对象的数据类型,

            b.引用计数器:纪录当前引用货指向该对象的数量,一旦计数器被清零,该对象的内存空间就会被回收。

     3. 引用:关联变量和对象之间的指针,

         a=3

          

           

二。共享引用,新创建对象:

      1. a=3

          b=a

          a='spam'

          a变了,b还等于3,因为b指向的对象没有发生变化,b的指针也没有变。

     2.  a=3

          b=a

          a=a+2

         b是什么情况?

     Python里给一个变量赋新值,并不会改变原有的对象,是重新创建一个对象,然后把新对象的指针指向变量,老对象的计数器会去除一个引用

三。共享应用,在原处修改对象:

     1. L1=[2,3,4]

         L2=L1

         L1[0]=24

         L1和L2均变为[24,3,4]

     2. L1=[2,3,4]

         L2=L1[:]

         L1[0]=24

         L1为[24,3,4]L2=[2,3,4],因为L1[:]为只拷贝对象,不会创建引用。

四。共享引用和相等:

     1. ‘==’:判断两个对象的值是否一样

     2. ‘is’   :判断两个对象的同一性,即两个变量是否指向了同一个对象

        

         

          

 

posted on 2016-03-07 15:27  晓风残梦  阅读(240)  评论(0编辑  收藏  举报

导航