对python中list的拷贝与numpy的array的拷贝详解


Posted in Python onJanuary 29, 2019

1.python中列表list的拷贝,会有什么需要注意的呢?

对python中list的拷贝与numpy的array的拷贝详解

python变量名相当于标签名。

list2=list1 ,直接赋值,实质上指向的是同一个内存值。任意一个变量list1(或list2)发生改变,都会影响另一个list2(或list1)。

eg:

>>> list1=[1,2,3,4,5,6]
>>> list2=list1
>>> list1[2]=88
>>> list1
[1, 2, 88, 4, 5, 6]
>>> list2
[1, 2, 88, 4, 5, 6]

而list3和list4是通过切片对list1的复制操作,分别指向了新的值。任意改变list3或list4的值,不会影响其他。

2.要使用ndarray类型的数组,需要from numpy import* 引用工具包numpy。

而对ndarray类型的数据进行拷贝时,跟list类型有一点区别。

对python中list的拷贝与numpy的array的拷贝详解

数组切片是原始数组的视图,这意味着数据不会被复制,视图上的任何修改都会被直接反映到源数组上.

array1,array2,array3,array4实际指向同一个内存值,任意修改其中的一个变量,其他变量值都会被修改。

若想要得到的是ndarray切片的一份副本而非视图,就需要显式的进行复制操作函数copy()。

eg:

array5=array1.copy() #对原始的array1的复制

array6=array1[1:4].copy() #对切片array1[1:4]的复制

那么,修改array5或array6,就不会影响array1。

以上这篇对python中list的拷贝与numpy的array的拷贝详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
进一步了解Python中的XML 工具
Apr 13 Python
python利用装饰器进行运算的实例分析
Aug 04 Python
Tensorflow 自带可视化Tensorboard使用方法(附项目代码)
Feb 10 Python
使用Python监控文件内容变化代码实例
Jun 04 Python
Python读取系统文件夹内所有文件并统计数量的方法
Oct 23 Python
python3实现多线程聊天室
Dec 12 Python
python交易记录链的实现过程详解
Jul 03 Python
Python人工智能之路 jieba gensim 最好别分家之最简单的相似度实现
Aug 13 Python
Python学习笔记之While循环用法分析
Aug 14 Python
Python 在 VSCode 中使用 IPython Kernel 的方法详解
Sep 05 Python
pycharm 代码自动补全的实现方法(图文)
Sep 18 Python
Python使用pandas导入xlsx格式的excel文件内容操作代码
Dec 24 Python
10 分钟快速入门 Python3的教程
Jan 29 #Python
解决python2 绘图title,xlabel,ylabel出现中文乱码的问题
Jan 29 #Python
解决python中画图时x,y轴名称出现中文乱码的问题
Jan 29 #Python
完美解决Python matplotlib绘图时汉字显示不正常的问题
Jan 29 #Python
通过python爬虫赚钱的方法
Jan 29 #Python
对Python生成汉字字库文字,以及转换为文字图片的实例详解
Jan 29 #Python
Python实现点阵字体读取与转换的方法
Jan 29 #Python
You might like
PHP 数据库树的遍历方法
2009/02/06 PHP
PHP定时执行计划任务的多种方法小结
2011/12/19 PHP
使用cookie实现统计访问者登陆次数
2013/06/08 PHP
深入解析PHP的Yii框架中的event事件机制
2016/03/17 PHP
jQuery的12招常用技巧分享
2011/08/08 Javascript
jQuery中RadioButtonList的功能及用法实例介绍
2013/08/23 Javascript
不同Jquery版本引发的问题解决
2013/10/14 Javascript
用JS将搜索的关键字高亮显示实现代码
2013/11/08 Javascript
node.js中Socket.IO的进阶使用技巧
2014/11/04 Javascript
angularJS 中input示例分享
2015/02/09 Javascript
跟我学习JScript的Bug与内存管理
2015/11/18 Javascript
JS生成某个范围的随机数【四种情况详解】
2016/04/20 Javascript
JS动态添加选项案例分析
2016/10/17 Javascript
详解AngularJS验证、过滤器、指令
2017/01/04 Javascript
详谈JavaScript的闭包及应用
2017/01/17 Javascript
Angular将填入表单的数据渲染到表格的方法
2017/09/22 Javascript
微信小程序开发之自定义tabBar的实现
2018/09/06 Javascript
如何在Vue.js中实现标签页组件详解
2019/01/02 Javascript
JS实现选项卡效果的代码实例
2019/05/20 Javascript
Vue+Django项目部署详解
2019/05/30 Javascript
JavaScript Window窗口对象属性和使用方法
2020/01/19 Javascript
VUE 单页面使用 echart 窗口变化时的用法
2020/07/30 Javascript
[02:42]DOTA2英雄基础教程 杰奇洛
2013/12/23 DOTA
深入理解python多进程编程
2016/06/12 Python
tensorflow中next_batch的具体使用
2018/02/02 Python
PowerBI和Python关于数据分析的对比
2019/07/11 Python
Django项目中实现使用qq第三方登录功能
2019/08/13 Python
纯CSS3实现的阴影效果
2014/12/24 HTML / CSS
联想英国官网:Lenovo英国
2019/07/17 全球购物
static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?
2015/02/22 面试题
应届毕业生应聘自荐信范文
2014/02/26 职场文书
投资建议书模板
2014/05/12 职场文书
二手车转让协议书
2015/01/29 职场文书
庆六一开幕词
2015/01/29 职场文书
工作简历自我评价
2015/03/11 职场文书
525心理健康活动总结
2015/05/08 职场文书