一、定义
数组是编程中一种强大的数据结构,它允许您存储和操作相同类型元素的集合。在 Python 中,数组是通过数组模块创建的,该模块提供了一个简单的接口来创建、操作和处理数组。
二、创建数组
在 Python 中,可以使用内置的 array 模块或第三方的 NumPy 库来创建和处理数组。
- array 模块提供了一种创建和处理数组的简单方式,可以创建固定长度的数组,并指定数据类型。
- 在 array 模块中,可以选择不同的数据类型代码来表示不同的数据类型,
- ‘i’ – 表示有符号整数;
- ‘f’ – 表示浮点数;
- ‘d’ – 表示双精度浮点数;
- ‘u’ – 表示无符号整数等。
import array# 创建数组,指定数据类型为整数
# 在创建数组时,需要指定数据类型,数据类型指定为 'i',表示整数类型
a = array.array('i', [1, 2, 3, 4, 5])# 访问数组元素
print(a[0])# 遍历数组
for i in a:print(i)# 修改数组元素
a[0] = 10# 输出数组元素
print(a)
- 使用Numpy库创建数组
NumPy 库提供了更多高级的数组操作和算法,可以创建多维数组,并提供了向量化运算等功能,是科学计算和数据分析领域经常使用的工具。
import numpy as np# 创建 1 维数组
a = np.array([1, 2, 3])# 打印数组和数据类型
print(a)
print(a.dtype)# 创建 2 维数组
b = np.array([[1, 2, 3], [4, 5, 6]])# 打印数组
print(b)# 创建全 0 或全 1 的数组
c = np.zeros((2, 3)) # 2x3 的全 0 数组
d = np.ones((2, 3)) # 2x3 的全 1 数组# 打印数组
print(c)
print(d)
三、访问数组元素
创建数组后,我们可以使用数组索引访问数组元素。数组索引从0开始,因此数组中第一个元素的索引为0,第二个元素的索引为1,以此类推。
import array as arr# 创建一个整数数组
my_array = arr.array('i', [1, 2, 3, 4, 5])# 访问数组的第一个元素
print(my_array[0])
# 输出: 1# 访问数组的第二个元素
print(my_array[1])
# 输出: 2# 访问数组的最后一个元素
print(my_array[-1])
# 输出: 5
四、数组切片
我们还可以使用切分法访问数组中的一系列元素。分片允许我们创建一个新数组,其中包含原始数组中元素的子集。
import array as arr# 创建一个整数数组
my_array = arr.array('i', [1, 2, 3, 4, 5])# 对数组进行切分,得到前三个元素
print(my_array[0:3])
# 输出: array('i', [1, 2, 3])# 对数组进行切分,得到最后三个元素
print(my_array[-3:])
# 输出: array('i', [3, 4, 5])
五、数组操作
Python 中的数组是可变的,这意味着我们可以在数组创建后修改其元素。我们可以添加或删除元素,改变元素的值,甚至改变数组中元素的类型。
1、添加元素
要向数组中添加元素,我们可以使用append()方法。该方法将元素添加到数组的末尾。【添加的必须是同一类型的元素】
import array as arr# 创建一个整数数组
my_array = arr.array('i', [1, 2, 3, 4, 5])# 为数组添加新元素# 使用 append() 方法在数组末尾添加一个元素。
my_array.append(6)
print(my_array)
# 输出: array('i', [1, 2, 3, 4, 5, 6])# 使用 insert() 方法在指定索引位置插入一个元素
my_array.insert(2, 10)
print(my_array)
# 输出:array('i', [4, 5, 10])# 使用 extend() 方法将一个列表添加到数组末尾
2、删除元素
要从数组中删除一个元素,我们可以使用remove()方法。该方法从数组中删除第一个出现的指定元素。
import array as arr# 创建一个整数数组
my_array = arr.array('i', [1, 2, 3, 4, 5])# 从数组中删除一个元素# 使用 remove() 方法删除第一个匹配的元素
my_array.remove(3)
print(my_array)
# 输出: array('i', [1, 2, 4, 5])# 使用 pop() 方法删除指定索引位置的元素,并返回该元素
my_array.pop(0)
print(my_array)
# 输出:array('i', [2, 4, 5])# 使用 del 关键字删除指定索引位置或切片范围内的元素
del my_array[0]
print(my_array)
# 输出:array('i', [4, 5])
3、改变元素
要改变数组中一个元素的值,我们可以简单地为指定索引处的元素赋一个新值。和数组元素类型是同一类型。
import array as arr# 创建一个整数数组
my_array = arr.array('i', [1, 2, 3, 4, 5])# 改变数组中一个元素的值
my_array[0] = 10# 打印更新后的数组
print(my_array)
# 输出: array('i', [10, 2, 3, 4, 5])
参考一,参考二