Python Data Structure 简明教程

Python - Arrays

数组是一个容器,它可以保存一个固定数量的项,并且这些项应该属于同一种类型。大多数数据结构利用数组来实现其算法。以下是了解数组概念的重要术语:

  1. Element - 存储在数组中的每个项称为一个元素。

  2. Index - 数组中每个元素的位置都有一个数字索引,用于标识元素。

Array Representation

数组可以在不同的语言中以不同的方式声明。下面是一个说明。

array declaration
array representation

根据上述插图,以下是要考虑的重要要点:

  1. Index starts with 0.

  2. 数组长度为 10,这意味着它可以存储 10 个元素。

  3. 可以通过索引访问每个元素。例如,我们可以按索引 6 获取元素 9。

Basic Operations

数组支持的基本操作如下所述:

  1. Traverse - 逐个打印所有数组元素。

  2. Insertion - 在给定的索引处添加一个元素。

  3. Deletion - 删除给定索引处的元素。

  4. Search - 使用给定索引或按值搜索元素。

  5. Update - 更新给定索引处的元素。

通过将 array 模块导入 python 程序来在 Python 中创建数组。然后,声明数组如下所示:

from array import *

arrayName = array(typecode, [Initializers])

类型码是用于定义数组将保存的值类型的代码。一些常用的类型码如下:

Typecode

Value

b

表示大小为 1 字节的带符号整数

B

表示大小为 1 字节的无符号整数

c

表示大小为 1 字节的字符

i

表示大小为 2 字节的带符号整数

I

表示大小为 2 字节的无符号整数

f

表示大小为 4 字节的浮点数

d

表示8个字节大小的浮点数

在查看各种数组操作之前,让我们使用python创建一个数组并打印它。

Example

以下代码创建一个名为 array1 的数组。

from array import *

array1 = array('i', [10,20,30,40,50])

for x in array1:
   print(x)

Output

当我们编译和执行以上程序时,它会产生以下结果 -

10
20
30
40
50

Accessing Array Element

我们可以使用元素的索引访问数组的每个元素。以下代码显示如何访问数组元素。

Example

from array import *

array1 = array('i', [10,20,30,40,50])

print (array1[0])

print (array1[2])

Output

当我们编译并执行上述程序时,它会产生以下结果,该结果显示元素插入在索引位置1。

10
30

Insertion Operation

插入操作是将一个或多个数据元素插入数组中。根据要求,可以在数组的开头、结尾或任何给定的索引处添加新元素。

Example

在此,我们使用 Python 内置的 insert() 方法在数组中间添加了一个数据元素。

from array import *

array1 = array('i', [10,20,30,40,50])

array1.insert(1,60)

for x in array1:
   print(x)

当我们编译并执行上述程序时,它会产生以下结果,显示元素插入到索引位置 1。

Output

10
60
20
30
40
50

Deletion Operation

删除指的是从数组中移除现有元素并重新组织数组的所有元素。

Example

在此,我们使用 Python 内置 remove() 方法,从数组中间移除一个数据元素。

from array import *

array1 = array('i', [10,20,30,40,50])

array1.remove(40)

for x in array1:
   print(x)

Output

当我们编译并执行上述程序时,它会产生以下结果,显示该元素已从数组中移除。

10
20
30
50

Search Operation

您可以根据数组元素的值或其索引对其进行搜索。

Example

在这里,我们使用python内置index()方法搜索数据元素。

from array import *

array1 = array('i', [10,20,30,40,50])

print (array1.index(40))

Output

当我们编译并执行上述程序时,它会产生以下结果,该结果显示元素的索引。如果该值不存在于数组中,则程序将返回错误。

3

Update Operation

更新操作是指在给定索引处从数组中更新现有元素。

Example

在这里,我们只需为我们想要更新的目标索引重新指定一个新值。

from array import *

array1 = array('i', [10,20,30,40,50])

array1[2] = 80

for x in array1:
   print(x)

Output

当我们编译并执行上述程序时,它会产生以下结果,该结果显示索引位置2处的新值。

10
20
80
40
50