Python数组 vs 列表
Python数组和列表是Python中重要的数据结构。数组和列表都用于在Python中存储数据。这些数据结构允许我们进行索引,切片和迭代。但是它们之间有一些不同之处。在本教程中,我们将学习Python列表和数组之间的重要区别。
简介
我们知道,Python具有广泛的数据结构,例如列表,元组,集合和字典,提供了许多功能和函数。列表是Python中最有效且易于使用的数据结构。 Python .
另一方面,Python没有为数组提供内置支持。我们需要导入数组模块来使用 数组模块 或来自 NumPy包 在Python程序中。这就是数组和列表之间的主要区别。在深入研究这个主题之前,让我们简要介绍一下这两个数据结构。
Python列表
一个 列表 是Python的内置线性数据结构。它用于以序列方式存储数据。我们可以对列表执行多个操作,如索引,迭代和切片。列表具有以下特点。
- 列表元素由方括号括起,每个元素用逗号(,)分隔。
- 它是一种可变类型,这意味着我们可以在创建后修改列表项。
- 列表是有序的,这意味着项目按特定顺序存储。我们可以使用索引来访问列表元素。
- 我们可以存储不同数据类型的元素。我们可以在同一个列表中组合字符串,整数和对象。
下面是一个列表的示例。
示例
list = [31, 60, 19, 12]
print(list)
print(type(list))
输出:
[31, 60, 19, 12]
<class 'list'>
示例2
# creating a list containing elements
# belonging to different data types
list1 = [1,"Yash",['a','e']]
print(list1)
输出:
[1, 'Yash', ['a', 'e']]
在上面的列表中,第一个元素是整数;第二个元素是字符串,第三个元素是字符列表。
Python中的数组
一个数组也是一种线性数据结构,用于存储数据。它也是有序的、可变的,并且用方括号括起来。它可以存储非唯一的项。但是存储不同数据类型的值有限制。
要在Python中使用数组,我们需要导入数组模块或者Numpy。
import array as arr
or
import numpy as np
元素在连续的内存位置上分配,这允许我们轻松修改、添加、删除、访问元素。此外,我们需要指定数据类型。让我们了解以下示例。
示例
Import array as arr
array_1 = arr.array("i", [31, 60,19, 12])
print(array_1)
print(type(array_1))
输出:
array('i', [31, 60, 19, 12])
<class 'array.array'>
示例2:使用Numpy数组
import numpy as np
array_sample = np.array(["str", 'sunil', 'sachin', 'megha', 'deepti'])
print (array_sample)
print(type(array_sample))
输出:
['numbers' 'sunil' 'sachin' 'megha' 'deepti']
<class 'numpy.ndarray'>
我们指定了字符串类型并存储了字符串值。
阵列和列表之间的差异
现在,我们对其进行了简要介绍和功能介绍。在这里,我们将讨论阵列和列表之间的差异。
序号 | 列表 | 数组 |
---|---|---|
1. | 列表可以存储不同类型的值。 | 数组只能由相同类型的值组成。 |
2. | 列表不能直接进行算术运算。 | 数组可以直接进行算术运算。 |
3. | 在使用数组之前需要导入。 | 列表是内置的数据结构,无需导入。 |
4. | 列表比数组更不兼容存储数据。 | 数组比列表更兼容。 |
5. | 列表消耗较大的内存。 | 数组在内存中比列表更紧凑。 |
6. | 它适用于存储较长的数据序列。 | 它适用于存储较短的数据序列。 |
7. | 我们可以使用显式循环打印整个列表。 | 我们可以在不使用显式循环的情况下打印整个列表。 |
8. | 列表可以嵌套包含不同类型的元素。 | 数组必须包含全部相同大小的嵌套元素。 |
结论
我们已经讨论了数组和列表之间的区别。在Python中,这两种数据类型都是必不可少的,但都有一些限制。Python列表在Python中易于使用,而数组通常用于数据分析。