Rumah >pembangunan bahagian belakang >Tutorial Python >python数组和列表区别

python数组和列表区别

(*-*)浩
(*-*)浩asal
2019-06-25 15:45:4729056semak imbas

python中的list是python的内置数据类型,list中的数据类不必相同的,而array的中的类型必须全部相同。在list中的数据类型保存的是数据的存放的地址,简单的说就是指针,并非数据,这样保存一个list就太麻烦了,例如list1=[1,2,3,'a']需要4个指针和四个数据,增加了存储和消耗cpu。numpy中封装的array有很强大的功能,里面存放的都是相同的数据类型

python数组和列表区别

python本身并没有数组类型,但是他的Numpy库中有数组类型。推荐学习:Python视频教程

二者都可以用于处理多维数组。

Numpy中的ndarray对象用于处理多维数组,它作为一个快速而灵活的大数据容器。Python列表可以存储一维数组,通过列表的嵌套可以实现多维数组。

2存储效率和输入输出性能不同。

Numpy专门针对数组的操作和运算进行了设计,存储效率和输入输出性能远优于Python中的嵌套列表,数组越大,Numpy的优势就越明显。

3元素数据类型。

通常,Numpy数组中的所有元素的类型都必须相同的,而Python列表中的元素类型是任意的,所以在通用性能方面Numpy数组不及Python列表,但在科学计算中,可以省掉很多循环语句,代码使用方面比Python列表简单的多。

array的创建

Numpy数组创建时,参数既可以是list,也可以是元组。例如:

>>> a=np.array((1,2,3))#参数是tuple
>>> b=np.array([6,7,8])#参数是list
>>> c=np.array([[1,2,3],[4,5,6]])#参数是二维list

除此之外,还可以使用numpy提供的其他方法创建一个数组,例如:

>>> arr1=np.arange(1,10,1)
>>> arr2=np.linspace(1,10,10)

np.arange(a,b,c)表示产生从a-b不包括b,间隔为c的一个array,数据类型默认是int32。但是linspace(a,b,c)表示的是把a-b平均分成c分,它包括b。

更多Python相关技术文章,请访问Python教程栏目进行学习!

Atas ialah kandungan terperinci python数组和列表区别. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:python函数重写怎么理解Artikel seterusnya:python中换行符怎么用