numpy中np.array()与np.asarray的区别有哪些
1. np.array()和np.asarray()的定义
np.array()和np.asarray()都是NumPy库中用于创建数组的函数。
np.array()函数将输入数组转换为ndarray对象,如果没有指定dtype参数,则会根据输入数据的类型自动推断出合适的数据类型。
np.asarray()函数将输入数据转换为ndarray对象,如果输入数据已经是ndarray类型,则会返回相同的对象,否则会创建一个新的ndarray对象。
2. 参数使用
np.array()函数有两个常用的参数:
- object:输入的数组形式的数据,可以是列表、元组等。
- dtype:指定输出数组的数据类型,默认为None,即会自动根据输入数据类型推断出合适的数据类型。
示例:
import numpy as np
arr1 = np.array([1, 2, 3])
arr2 = np.array([1, 2, 3], dtype=float)
print(arr1) # [1 2 3]
print(arr2) # [1. 2. 3.]
np.asarray()函数只有一个常用的参数:
- a:输入的数组形式的数据。
示例:
import numpy as np
arr1 = [1, 2, 3]
arr2 = (1, 2, 3)
arr3 = np.asarray(arr1)
arr4 = np.asarray(arr2)
print(arr3) # [1 2 3]
print(arr4) # [1 2 3]
3. 返回值类型
np.array()函数返回一个ndarray对象,即NumPy数组,该对象具有数组相关的属性和方法。
示例:
import numpy as np
arr1 = np.array([1, 2, 3])
arr2 = np.array([(1, 2, 3), (4, 5, 6)])
print(type(arr1)) # <class 'numpy.ndarray'>
print(type(arr2)) # <class 'numpy.ndarray'>
np.asarray()函数返回一个ndarray对象,即NumPy数组,该对象具有数组相关的属性和方法。
示例:
import numpy as np
arr1 = [1, 2, 3]
arr2 = (1, 2, 3)
arr3 = np.asarray(arr1)
arr4 = np.asarray(arr2)
print(type(arr3)) # <class 'numpy.ndarray'>
print(type(arr4)) # <class 'numpy.ndarray'>
总结:
np.array()和np.asarray()都可以将输入的数据转换为NumPy数组。两者的参数使用上略有不同,np.array()函数可以指定数据类型,而np.asarray()函数只需传入数据即可。
然而,np.array()函数在输入数据是ndarray类型时,会创建一个新的ndarray对象;而np.asarray()函数则会直接返回输入数据的ndarray对象,不会创建新对象。
因此,可根据具体需求选择使用np.array()函数还是np.asarray()函数。如果需要创建新的对象,或者不确定输入数据类型是否是ndarray,可以使用np.array()函数;如果已经确定输入数据类型是ndarray,且希望返回相同的对象,则可使用np.asarray()函数。
猜您想看
-
Hyperledger Composer架构的示例分析
Hyperle...
2023年05月25日 -
为什么HashMap的加载因子是0.75
1. 什么是H...
2023年07月22日 -
电脑开机变慢怎么办?
电脑开机变慢,...
2023年04月20日 -
shell编程数值运算有哪些
算术运算符在s...
2023年07月21日 -
python不是内部或外部命令也不是可运行的程序或批处理文件问题怎么解决
1. 问题描述...
2023年05月26日 -
Unity Shader如何结合Projector和Rendertexture来实现实时阴影
1.Proje...
2023年05月25日