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

什么是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中的几个重要区别。

列表 数组
列表是异构的(它们可以存储不同数据类型的值)。 数组是同构的(它们只能存储同一数据类型的值)。
定义一个列表时不需要导入任何模块。 定义一个数组时需要显式地导入模块。
列表无法处理算术运算。 数组可以处理算术运算。
相对于数组,列表占用更多内存。 相对于列表,数组更紧凑。
对数据项进行插入、删除和更新等修改操作很简单。 由于添加、删除和更新操作仅作用于一个单独的元素,因此修改数组很困难。
列表可以被嵌套以容纳多种类型的组件。 所有嵌套组件必须是相同大小的。
我们可以通过显式循环打印整个列表。 我们可以在不使用显式循环的情况下打印整个数组。
列表适用于短数据序列。 数组适用于更长的数据序列。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程