zoukankan      html  css  js  c++  java
  • python 引用和拷贝

    python 引用:
    python一般内部赋值变量的话,都是传个引用变量,和C语言的传地址的概念差不多,
    比如
    a = [1,2,3]
    表示变量a保存了这个列表的地址
    python里可以用id()来查询下
    a在内存的地址是:675375852
    b = a
    那b的内容是什么,地址又是什么呢?
    用print 输出下b的内容也是[1,2,3]
    然后我们查看下b的地址看下能否验证我们的结论
    print id(b)
    果然b的地址也是:675375852
    呵呵看来结论也正确的。

    这样会带来一个问题,因为变量a,和变量b都是保存了同一个列表的地址。如果我改变a指向的列表的值的话,
    那b指向的列表的值也同时改变
    比如:
    a[1] = 6
    print a
    输出的内容是[1,6,3]
    print b
    b指向的列表的内容也是[1,6,3]


    python 拷贝

    如果我们只想修改a列表里面的内容。而不想修改b的内容,那就要用到python的拷贝了
    a=[1,2,3]
    b=a[:]###拷贝了一份a的内容给b
    a[1]=6
    print a
    输出a的内容是[1,6,3]
    而b的内容不是[1,6,3]
    而是[1,2,3]

    呵呵python果然好神奇阿!!


    原创文章:http://www.cnpythoner.com/post/20.html,转载请保留,谢谢!

  • 相关阅读:
    kolla
    lbaas
    celery
    redis发布订阅
    数据库简单介绍
    celery
    ansible初识
    315
    request
    navicat连接mysql报错1251解决方案
  • 原文地址:https://www.cnblogs.com/wanpython/p/2798367.html
Copyright © 2011-2022 走看看