numpy中array和asarray的区别有哪些?对Python开发感兴趣或者是想要加入到Python领域中的小伙伴就随小编来看一下吧。
array和asarray都可以将结构数据转化为ndarray,但是主要区别就是当数据源是ndarray时,array仍然会copy出一个副本,占用新的内存,但asarray不会。
举例说明:
import numpy as np #example 1: data1=[[1,1,1],[1,1,1],[1,1,1]] arr2=np.array(data1) arr3=np.asarray(data1) data1[1][1]=2 print 'data1:
',data1 print 'arr2:
',arr2 print 'arr3:
',arr3
输出:
data1: [[1, 1, 1], [1, 2, 1], [1, 1, 1]] arr2: [[1 1 1] [1 1 1] [1 1 1]] arr3: [[1 1 1] [1 1 1] [1 1 1]]
可见array和asarray没有区别,都对元数据进行了复制。
import numpy as np #example 2: arr1=np.ones((3,3)) arr2=np.array(arr1) arr3=np.asarray(arr1) arr1[1]=2 print 'arr1:
',arr1 print 'arr2:
',arr2 print 'arr3:
',arr3
输出:
arr1: [[ 1. 1. 1.] [ 2. 2. 2.] [ 1. 1. 1.]] arr2: [[ 1. 1. 1.] [ 1. 1. 1.] [ 1. 1. 1.]] arr3: [[ 1. 1. 1.] [ 2. 2. 2.] [ 1. 1. 1.]]
此时两者才表现出区别
想要了解更多关于Python和人工智能方面内容的小伙伴,Python爬虫人工智能学习群 454380743
学习了,能下载[系统源码](http://doofuu.com/)吗,有go开发的[小程序案例](http://doofuu.com/article/4156206.html)吗,或者能[免费下载源码](https://free.doofuu.com)能也行
#1