Python 列表和数组之间的区别是什么

Python 列表和数组之间的区别是什么

在Python中,数组和列表都用于存储数据作为数据结构。在本文中,我们讨论列表和数组之间的区别。

列表

列表是Python提供的四种最常用的数据结构之一。列表是Python中的一种可变数据结构,具有有序的元素序列。列表还支持负索引。

以下是一组整数值:

lis= [1,2,3,4,5]
print(lis)

输出

如果执行上面的代码片段,会产生以下输出:

[1, 2, 3, 4, 5]

数组

数组是一种以线性格式保存数据的数据结构。数组包含一定数量的元素,这些元素应该是同质的(具有相同的数据类型)。它也是方括号包围的、有序的、可变的和有序的。

通过导入数组模块声明一个数组。

在Python中,我们需要导入一个数组模块或者导入NumPy来声明一个数组。

示例

import array as arr
sample_array = arr.array("i", [1, 2, 3, 4])
print(sample_array)
print(type(sample_array))

输出

上述代码生成以下结果

array('i', [1, 2, 3, 4])
<type 'array.array'>

通过导入Numpy声明一个数组

在这个示例中,我们将通过导入numpy模块声明一个数组。

import numpy as np
sample_array = np.array([1, 2, 3, 4])
print(sample_array)
print(type(sample_array))

输出

上述代码生成以下结果

[1 2 3 4]
<class 'numpy.ndarray'>

在Python中列表和数组之间的区别

以下是列表和数组在Python中的一些重要区别。

列表 数组
列表是异构的(可以存储不同数据类型的值)。 数组是同构的(只能存储相同数据类型的值)。
声明一个列表不需要导入任何模块。 声明一个数组需要显式导入模块。
列表不能进行算术操作。 数组可以进行算术操作。
列表相比数组占用更多的内存。 数组在内存大小上比列表更紧凑。
对数据项的修改,如插入、删除和更新十分简单。 修改数组很困难,因为添加、删除和更新操作只能对单个元素执行。
列表可以嵌套来容纳多种类型的组件。 所有嵌套组件的大小必须相同。
我们可以借助显式循环打印整个列表。 我们可以在不借助显式循环的情况下打印整个列表。
列表适用于短数据序列。 数组适用于更长的数据序列。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程