Python教程:数组(Array)概念

2018-10-1419:08:28数据结构与算法Comments29,460 views1字数 1717阅读模式

数组是一个容器,它可以容纳一定数量的项目,这些项目是相同的类型。 大部分数据结构都使用数组来实现它们的算法。 以下是理解数组(Array)概念的重要术语。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

  • 元素 - 存储在数组中的每个项目称为元素。
  • 索引 - 数组中元素的每个位置都有一个数字索引,用于标识元素。

数组表示

数组可以用不同的语言,可以各种方式声明。下面是一个例子。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

Python教程:数组(Array)概念文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

根据上述说明,需要了解清楚以下问题。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

  • 索引从0开始。
  • 数组长度为10,这意味着它可以存储10个元素。
  • 每个元素都可以通过索引访问。 例如,可以在索引6处获取一个元素的值为9

基本操作

以下是数组支持的基本操作。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

  • 遍历 - 逐个打印所有数组元素。
  • 插入 - 在给定的索引处添加一个元素。
  • 删除 - 删除给定索引处的元素。
  • 搜索 - 使用给定索引或值搜索元素。
  • 更新 - 更新给定索引处的元素。

通过将数组模块导入到python程序中来创建数组,数组声明如下所示 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

from array import *

arrayName = array(typecode, [Initializers])

typecode是用于定义数组将保存的值类型的代码。 一些常用的typecodes使用如下:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

Typecode
b表示大小为1字节的有符号整数
B表示大小为1字节的无符号整数
c表示大小为1字节的字符
i表示大小为2个字节的带符号整数
I表示大小为2个字节的无符号整数
f表示大小为4字节的浮点
d表示大小为8个字节的浮点

在查看各种数组操作之前,可以使用python创建和打印数组。
下面的代码创建一个名称为array1的数组。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

from array import *

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

for x in array1:
    print(x)
Python

执行上面示例代码,得到以下结果 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

10
20
30
40
50
Shell

1. 访问数组元素文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

可以使用元素的索引来访问数组中的每个元素。 以下代码显示了如何访问数组中的指定元素 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

from array import *

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

# 访问第一个元素
print (array1[0])
# 访问第三个元素
print (array1[2])
Python

当编译并执行上述程序时,它会产生以下结果 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

10
30
Shell

2. 插入操作文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

插入操作是将一个或多个数据元素插入到数组中。 根据需要,可以在开始,结束或任何给定的数组索引中添加/插入一个新元素。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

在这里,使用python内置insert()方法在数组中间添加一个数据元素。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

from array import *

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

array1.insert(1,60)

for x in array1:
    print(x)
Python

执行上面示例代码,得到以下结果 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

10
60
20
30
40
50
Shell

3. 删除元素操作文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

删除是指从数组中删除现有元素并重新组织数组的所有元素。
在这里,使用python内置remove()方法来删除数组中的数据元素。参考以下代码实现 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

from array import *

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

array1.remove(40)

for x in array1:
    print(x)
Python

执行上面示例代码,得到以下结果 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

10
20
30
50
Shell

4. 查找/搜索操作文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

可以根据其值或索引来执行数组元素的搜索(查找)。
在这里,使用python内置index()方法来搜索数组中的元素。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

from array import *

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

print (array1.index(40))
Python

执行上面示例代码,得到以下结果 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

3
Shell

注意:如果该值不在数组中,则返回一个错误。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

5. 更新操作文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

更新操作是指在给定索引处更新数组中的现有元素。
在这里,只需重新分配一个新的值给想要更新的所需索引即可。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

from array import *

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

array1[2] = 180

for x in array1:
    print(x)
Python

执行上面示例代码,得到以下结果 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html

10
20
180
40
50
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/suanfa/6659.html
  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/suanfa/6659.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定