Sunshine_in_Moon的专栏

天行健君子以自强不息!

python中list.append()后面数据覆盖前面数据分析及解决办法

      今天在用python写代码时,在一个循环中想把一个变量vector利用vector.append(vector)写进列表vector2中,结果发现无法实现,vector后面的值会将列表中前面的值覆盖,在请教了几位大牛后,问题终于解决了。

原因分析:Python中的对象之间赋值时是按引用传递的,如果需要拷贝对象,需要使用标准库中的copy模块。
                 1. copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象。 
                 2. copy.deepcopy 深拷贝 拷贝对象及其子对象

解决方法:我使用的是copy.deepcopy函数,成功了!

祝各位好运!!!

参考链接:http://greybeard.iteye.com/blog/1442259



阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Sunshine_in_Moon/article/details/49926731
个人分类: Python 错题本 caffe
上一篇Python+opencv 无法正确读取视频文件(已解决)
下一篇memcpy函数的用法
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭