[Numpy] array与asarray的区别
比较
- 相同点:array和asarray都能将结构数据转换成ndarray数组(copy原数据生成新的副本)
- 区别:数据源为ndarray时,array仍会copy原数据生成一个副本,asarray不会copy原数据,而是直接使用原数据。
实例对比
实例1:当原结构数据为列表时
代码
import numpy as np
def simply1():
data = [[1,1,1],[1,1,1],[1,1,1]]
data1 = np.array(data)
data2 = np.asarray(data)
data[1][1] = 2
print(data)
print(data1)
print(data2)
if __name__ == "__main__" :
simply1()
运行结果
实例2:当原数据为ndarray数组时
代码
import numpy as np
def simply2():
data = np.ones((3,3))
data1 = np.array(data)
data2 = np.asarray(data)
data[1] = 2
print(data)
print(data1)
print(data2)
if __name__ == "__main__" :
simply2()
运行结果