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()函数。
猜您想看
-
解决电脑在启动时出现错误
电脑在启动时出...
2023年04月27日 -
Redis延迟问题怎么排查
1. 基本概念...
2023年07月22日 -
如何进行TreeMap源码解析
一、TreeM...
2023年07月23日 -
嵌入式Linux OS怎么启动
一、嵌入式Li...
2023年05月26日 -
phpcms v9 怎么通过数据库实现会员导入
一、数据库准备...
2023年07月20日 -
leetcode中如何为运算表达式设计优先级
一、问题概述在...
2023年07月23日