Numpy.array()的参数详细讲解—包括subok参数讲解

定义numpy.array(object,dtype=None,copy=True,order=None,subok=False,ndmin=0)

参数解释: object: 表示一个数组序列

dtype: 可选参数,通过它可以更改数组的数据类型—可将原来的整型或者其他类型进行强制转换

copy: 可选参数,当数据源是ndarray 时表示数组能否被复制,默认是True

order: 可选参数,以哪种内存布局创建数组,有3个可选值,分别是C(行序列)/F(列序列)/A(默认)

ndmin: 可选参数,用于指定数组的维度–例如 一维数组、二维数组、三维数组等

subok: 可选参数,类型为bool值,默认为False。 为True,使用object的内部数据类型; 为False 使用object数组的数据类型

1.设置dtype参数,默认自动识别,强制转换

实现代码如下:

a=np.array([1,2,3,4,5])
print(a)
#设置数组元素类型
has_dtype_a=np.array([1,2,3,4,5],dtype='float')
has_dtype_a

输出结果如下:

Numpy.array()的参数详细讲解---包括subok参数讲解

思考如何将浮点型数据,设置为整型,会是什么情况

my_list1=[1,2,3,4]
my_list2=my_list1
print(my_list2)
my_list2[1]=10
print(my_list1)
my_list2

输出结果如下:

Numpy.array()的参数详细讲解---包括subok参数讲解

获取其两个列表ID的代码如下:

print(id(my_list1))
print(id(my_list2))

输出结果如下:

Numpy.array()的参数详细讲解---包括subok参数讲解

2.设置copy参数,默认为True

三种拷贝方法如下:

1、实现代码b=np.array(a)如下:

a=np.array([1,2,3,4])
#定义b数组,赋值a
b=np.array(a)
print(b)
#输出a和b的id值
print('a的id:',id(a))
print('b的id:',id(b))

输出结果如下:

Numpy.array()的参数详细讲解---包括subok参数讲解

后续代码如下:

#当修改b的值时,a不会发生变化
b[0]=10
print('a:',a,'b:',b)
print('='*10)

输出结果如下:

Numpy.array()的参数详细讲解---包括subok参数讲解

这种b=a的直接赋值操作,是试图操作,相当于列表的引用赋值

———这种试图操作,会导致修改b元素时,a的元素也会发生变化

后续代码如下:

a=np.array([1,2,3,4])
#定义b数组,赋值a
b=a
print(b)
#输出a和b的id值
print('a的id:',id(a))
print('b的id:',id(b))

输出结果如下:

Numpy.array()的参数详细讲解---包括subok参数讲解

3.ndmin 用于指定数组的维度

实现代码如下:

a=np.array([1,2,3,4])
print(a)
a=np.array([1,2,3,4],ndmin=2)
print(a)
a.ndim

输出结果如下:

Numpy.array()的参数详细讲解---包括subok参数讲解

4.subok参数,类型为bool值,默认为False。为True时,使用object的内部数据类型; 为False时,使用数组的数据类型

(注:以上所有代码均可直接复制粘贴在jupyter中直接运行)

Original: https://blog.csdn.net/qq_46044325/article/details/126357418
Author: 编程贝多芬
Title: Numpy.array()的参数详细讲解—包括subok参数讲解

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/693453/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球