列表和数组都用于在 Python 中存储数据。此外,这两种数据结构都允许索引、切片和迭代。
列表:Python 中的列表是一个集合,它可以包含多种数据类型的元素,可以是数字、字符逻辑值等。它是一个支持负索引的有序集合。可以使用包含数据值的 [ ]创建列表。
列表的内容可以使用 python 的内置函数轻松合并和复制。
#创建一个包含不同类型数据的列表
sample_list = [1, "Yash", ['a', 'e']]
print(sample_list)
输出:[1, 'Yash', ['a', 'e']]
数组:数组是包含同类元素的矢量,即属于同一数据类型。元素分配有连续的内存位置,允许轻松修改,即添加、删除、访问元素。在 Python 中,我们必须使用array
模块来声明数组。如果数组的元素属于不同的数据类型,则会抛出异常“不兼容的数据类型”。
#创建一个数组并打印输出
import array
sample_array = array.array('i', [1, 2, 3])
#访问数组元素
for i in sample_array:
print(i)
输出:
1
2
3
python中list与array的区别 | |
list(列表) | array(数组) |
可以由不同数据类型的元素组成 | 仅由属于相同数据类型的元素组成 |
无需导入模块进行声明 | 需要导入模块进行声明 |
不能直接处理算数运算 | 可以直接处理算术运算,适合数值运算 |
可以嵌套以包含不同类型的元素 | 必须包含所有相同大小的嵌套元素 |
首选用于较短的数据项序列 | 首选较长的数据项序列 |
可以轻松修改、添加、删除数据,灵活性高 | 由于修改、添加、删除必须按元素进行,因此灵活性低 |
无需任何循环即可打印整个列表 | 必须使用一个循环来打印或访问数组的元素 |
耗用更大的的内存以方便添加元素 | 存储相对紧凑 |