• (07)内存使用和变量赋值


    ==================================
    修订时间:
    17:36 2016-03-03 星期四
    12:43 2015-2-5 星期四
    ==================================
    文件头通用写法
    #!/usr/bin/python
    #conding:utf8
    ==================================

    ■ 浅拷贝:
      ● 标签 和 地址空间
         a=[1,3,4] 
         b=a
         a 和 b 是标签  后面的数据是地址空间    a 和b 指向同一个地址空间,随便改一个,都会跟着变
        
         系统拷贝方式
         b=a[:]
       
         import copy
         a=[1,3,4,['a','b']] 
         b=copy.copy(a)
        浅拷贝:只拷贝父对象,子对象不拷贝,若a改变第4个元素,b对应的第4个元素还会变
        可以用id()函数看内存地址

    ■ 深拷贝:
        b=copy.deepcopy(a)
        深拷贝:把对象和存储空间完全拷贝出来

    ■ 这对代码性能有一定的影响

    * 变量赋值:
        #简化赋值,这样两边数目要一样
        >>> one,two,three,four="good"
        >>> one
        Out[257]: 'g'
        >>> two
        Out[258]: 'o'
        >>> three
        Out[259]: 'o'
        >>> four
        Out[260]: 'd'
       
        >>> name,age="toby",22
        >>> name
        Out[262]: 'toby'
        >>> age
        Out[263]: 22
       
        #两变理交换数值
        >>> name="john"
        >>> age=22
        >>> name,age=age,name
        >>> name
        Out[46]: 22
        >>> age
        Out[47]: 'john'
        比其它高级语言强
       
        #序列赋值左右数目一定要相等
         >>> a,b=33,11,22
        Traceback (most recent call last):
          File "/usr/local/lib/python2.7/site-packages/IPython/core/interactiveshell.py", line 3066, in run_code
            exec(code_obj, self.user_global_ns, self.user_ns)
          File "<ipython-input-48-af8ae72f8be9>", line 1, in <module>
            a,b=33,11,22
        ValueError: too many values to unpack
        左2,右3,当然报错了
       
        # 条件赋值
        >>> name="John" if 3>2 else "Mary"
        >>> name
        Out[20]: 'John'
        >>> name="John" if 3<2 else "Mary"
        >>> name
        Out[22]: 'Mary
        if 条件为真,保底前面赋值,否则用后面值换了

  • 相关阅读:
    mysql日志
    MYSQL-事务中的锁与隔离级别
    MYSQL事务的日志
    Innodb核心特性-事务
    Innodb存储引擎-表空间介绍
    innodb存储引擎简介
    MYSQL之存储引擎
    MYSQL之索引配置方法分类
    MYSQL之索引算法分类
    MYSQL之select的高级用法
  • 原文地址:https://www.cnblogs.com/toby2chen/p/5197388.html
Copyright © 2020-2023  润新知