浅谈numpy中np.array()与np.asarray的区别以及.tolist


Posted in Python onJune 03, 2020

array和asarray都可以将结构数据转化为ndarray,但是主要区别就是当数据源是ndarray时,array仍然会copy出一个副本,占用新的内存,但asarray不会。

1.输入为列表时

a=[[1,2,3],[4,5,6],[7,8,9]]
b=np.array(a)
c=np.asarray(a)
a[2]=1
print(a)
print(b)
print(c)

浅谈numpy中np.array()与np.asarray的区别以及.tolist

从中我们可以看出np.array与np.asarray功能是一样的,都是将输入转为矩阵格式。当输入是列表的时候,更改列表的值并不会影响转化为矩阵的值。

2.输入为数组时

a=np.random.random((3,3))
print(a.dtype)
b=np.array(a,dtype='float64')
c=np.asarray(a,dtype='float64')
a[2]=2
print(a)
print(b)
print(c)

浅谈numpy中np.array()与np.asarray的区别以及.tolist

从上述结果我们可以看出np.array与np.asarray的区别,其在于输入为数组时,np.array是将输入copy过去而np.asarray是将输入cut过去,所以随着输入的改变np.array的输出不变,而np.asarray的输出在变化,并且当我们使用np.asarray改变其类型的时候(输入是float64,改为float32),这样当输入改变的时候,np.asarray的输出也不会改变。

3.array类型转为list类型

a=np.random.random((3,3))
print(a.dtype)
b=a.tolist()
a[1]=2
print(a)
print(b)

浅谈numpy中np.array()与np.asarray的区别以及.tolist

从上述我们可以看到.tolist是将数组转为list的格式,等同于np.array的反向,那什么情况下需要将np.ndarray转为list的格式呢?当需要序列化的时候(serialization),由于np.ndarray是不可序列化的。

补充知识:opencv 将int类型数字转换为固定长度的字符串cv::format

int currentFrame = 2;

stringstream frame_name;
frame_name << cv::format("%.3d",currentFrame) << ".jpg";

或者:

String save_frame_path;
save_frame_path = cv::format("%.3d", frame_num) + ".jpg";

以上这篇浅谈numpy中np.array()与np.asarray的区别以及.tolist就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python算法学习之桶排序算法实例(分块排序)
Dec 18 Python
web.py在模板中输出美元符号的方法
Aug 26 Python
Python深入学习之特殊方法与多范式
Aug 31 Python
初步剖析C语言编程中的结构体
Jan 16 Python
对Python 窗体(tkinter)树状数据(Treeview)详解
Oct 11 Python
Python中collections模块的基本使用教程
Dec 07 Python
Python爬虫实战之12306抢票开源
Jan 24 Python
Python+PyQt5实现美剧爬虫可视工具的方法
Apr 25 Python
python批量修改xml属性的实现方式
Mar 05 Python
python模拟斗地主发牌
Apr 22 Python
python中如何写类
Jun 29 Python
Python 读取位于包中的数据文件
Aug 07 Python
基于Python绘制美观动态圆环图、饼图
Jun 03 #Python
利用OpenCV中对图像数据进行64F和8U转换的方式
Jun 03 #Python
浅谈python opencv对图像颜色通道进行加减操作溢出
Jun 03 #Python
python golang中grpc 使用示例代码详解
Jun 03 #Python
Opencv图像处理:如何判断图片里某个颜色值占的比例
Jun 03 #Python
QML用PathView实现轮播图
Jun 03 #Python
Python基于smtplib协议实现发送邮件
Jun 03 #Python
You might like
德生PL330的评价与改造
2021/03/02 无线电
php表单提交与$_POST实例分析
2015/01/26 PHP
PHP查找与搜索数组元素方法总结
2015/06/12 PHP
详解PHP中的8个魔术常量
2020/07/06 PHP
jQuery表格行换色的三种实现方法
2011/06/27 Javascript
jQuery+jRange实现滑动选取数值范围特效
2015/03/14 Javascript
Jquery注册事件实现方法
2015/05/18 Javascript
基于jQuery实现简单的折叠菜单效果
2015/11/23 Javascript
easyui window refresh 刷新两次的解决方法(推荐)
2016/05/18 Javascript
AngularJS实现根据变量改变动态加载模板的方法
2016/11/04 Javascript
JavaScript实现的原生态兼容IE6可调可控滚动文字功能详解
2017/09/19 Javascript
使用async await 封装 axios的方法
2018/07/09 Javascript
[00:43]2016完美“圣”典风云人物:单车宣传片
2016/12/02 DOTA
[40:06]DOTA2亚洲邀请赛 4.3 突围赛 Liquid vs VGJ.T 第一场
2018/04/04 DOTA
python保存字符串到文件的方法
2015/07/01 Python
pandas将DataFrame的列变成行索引的方法
2018/04/10 Python
django 解决manage.py migrate无效的问题
2018/05/27 Python
Python拼接微信好友头像大图的实现方法
2018/08/01 Python
Python中的枚举类型示例介绍
2019/01/09 Python
Python实现平行坐标图的绘制(plotly)方式
2019/11/22 Python
基于Tensorflow批量数据的输入实现方式
2020/02/05 Python
Python3.9又更新了:dict内置新功能
2020/02/28 Python
python 装饰器的实际作用有哪些
2020/09/07 Python
纯CSS3实现3D旋转书本效果
2016/03/21 HTML / CSS
Static Nested Class 和 Inner Class的不同
2013/11/28 面试题
中专药剂专业应届毕的自我评价
2013/12/27 职场文书
优秀经理获奖感言
2014/03/04 职场文书
关于青春的演讲稿500字
2014/08/22 职场文书
村主任个人对照检查材料
2014/10/01 职场文书
清洁工个人总结
2015/03/04 职场文书
2015年学校办公室工作总结
2015/05/26 职场文书
大队委员竞选演讲稿
2015/11/20 职场文书
银行柜员优质服务心得体会
2016/01/22 职场文书
详解PHP Swoole与TCP三次握手
2021/05/27 PHP
python人工智能human learn绘图可创建机器学习模型
2021/11/23 Python
Golang数据类型和相互转换
2022/04/12 Golang