python中的数组(Array)

简介: python中的数组(Array)

python中的数组(Array

在Python中,数组(Array)是一种有序的数据集合,用于存储固定数量的相同类型的元素。数组是一个连续的内存空间,可以按照索引访问和修改每个元素。

特点:

  1. 数组中的元素具有相同的数据类型,可以是数字、字符串或其他类型。
  2. 数组的大小是固定的,一旦创建,其长度不能改变。
  3. 可以通过索引值来访问和修改数组中的元素。
  4. 数组中的元素在内存中是连续存储的。

创建数组:

在Python中,可以使用第三方库 numpy 来创建和操作数组。Numpy是Python的一个强大数学和科学计算库,为高效操作多维数组提供了丰富的函数和方法。

首先需要安装 numpy 库,可以使用以下命令安装:

pip install numpy

安装完成后,就可以使用 numpy 来创建数组

import numpy as np
arr = np.array([1, 2, 3, 4, 5])  # 创建一维数组
print(arr)  # 输出: [1 2 3 4 5]
matrix = np.array([[1, 2, 3], [4, 5, 6]])  # 创建二维数组
print(matrix)
# 输出:
# [[1 2 3]
#  [4 5 6]]

访问和修改数组元素:

可以使用索引值来访问数组中的特定元素。索引值从0开始,可以是整数或切片对象。对于多维数组,可以通过逐层索引来访问和修改元素。

import numpy as np
arr = np.array([1, 2, 3, 4, 5])
print(arr[0])  # 输出: 1,访问第一个元素
arr[2] = 10  # 修改第三个元素为10
print(arr)  # 输出: [ 1  2 10  4  5]
matrix = np.array([[1, 2, 3], [4, 5, 6]])
print(matrix[0, 1])  # 输出: 2,访问第一行第二列元素
matrix[1, 2] = 7  # 修改第二行第三列元素为7
print(matrix)
# 输出:
# [[1 2 3]
#  [4 5 7]]

常用操作:

  • 数组形状:可以使用 shape 属性获取数组的形状,返回一个表示各个维度大小的元组。
import numpy as np
matrix = np.array([[1, 2, 3], [4, 5, 6]])
shape = matrix.shape
print(shape)  # 输出: (2, 3),表示2行3列的二维数组
  • 数组操作:Numpy提供了丰富的函数和方法来操作数组,如计算最大值、最小值、平均值,以及进行排序等。
import numpy as np
arr = np.array([5, 2, 1, 6, 4])
maximum = np.max(arr)  # 计算数组的最大值
print(maximum)  # 输出: 6
minimum = np.min(arr)  # 计算数组的最小值
print(minimum)  # 输出: 1
mean = np.mean(arr)  # 计算数组的平均值
print(mean)  # 输出: 3.6
sorted_arr = np.sort(arr)  # 对数组进行排序
print(sorted_arr)  # 输出: [1 2 4 5 6]
  • 数组切片:可以使用切片对象来获取数组的子集。切片对象由开始索引、结束索引和步长组成。
import numpy as np
arr = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
subset = arr[2:6]  # 获取索引2到5(不包括6)的子集
print(subset)  # 输出: [2 3 4 5]
reversed_arr = arr[::-1]  # 将数组逆序
print(reversed_arr)  # 输出: [9 8 7 6 5 4 3 2 1 0]

以上是关于Python中数组的详细讲解。数组是一种常见的数据结构,用于存储和处理大量相同类型的数据。借助第三方库 numpy,我们可以高效地创建、访问和操作数组,从而方便地进行数值计算和科学运算。

相关文章
|
17天前
|
人工智能 前端开发 JavaScript
拿下奇怪的前端报错(一):报错信息是一个看不懂的数字数组Buffer(475) [Uint8Array],让AI大模型帮忙解析
本文介绍了前端开发中遇到的奇怪报错问题,特别是当错误信息不明确时的处理方法。作者分享了自己通过还原代码、试错等方式解决问题的经验,并以一个Vue3+TypeScript项目的构建失败为例,详细解析了如何从错误信息中定位问题,最终通过解读错误信息中的ASCII码找到了具体的错误文件。文章强调了基础知识的重要性,并鼓励读者遇到类似问题时不要慌张,耐心分析。
|
19天前
|
存储 Java
Java“(array) <X> Not Initialized” (数组未初始化)错误解决
在Java中,遇到“(array) &lt;X&gt; Not Initialized”(数组未初始化)错误时,表示数组变量已被声明但尚未初始化。解决方法是在使用数组之前,通过指定数组的大小和类型来初始化数组,例如:`int[] arr = new int[5];` 或 `String[] strArr = new String[10];`。
|
1月前
|
机器学习/深度学习 并行计算 大数据
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧2
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧
63 10
|
1月前
|
索引 Python
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧1
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧
82 4
|
1月前
|
存储 JavaScript 前端开发
JavaScript Array(数组) 对象
JavaScript Array(数组) 对象
24 3
|
2月前
|
存储 算法 搜索推荐
Python进阶必备:字典树Trie与后缀树Suffix Array,效率提升的神器!
在Python编程中,掌握高效的数据结构对于提升程序性能至关重要。本文将深入探讨两种强大的字符串处理数据结构——字典树(Trie)与后缀数组(Suffix Array)。字典树,又称前缀树,适用于自动补全和拼写检查等功能。例如,在文本编辑器中实现自动补全时,字典树能够即时提供单词补全选项。后缀数组则用于存储字符串的所有后缀并按字典序排序,结合最长公共前缀(LCP)数组,可以高效解决许多字符串问题,如查找最长重复子串等。通过实际案例,我们将展示这两种数据结构的强大功能,帮助你在Python编程中更进一步。
50 2
|
1月前
|
数据采集 JavaScript 前端开发
JavaScript中通过array.filter()实现数组的数据筛选、数据清洗和链式调用,JS中数组过滤器的使用详解(附实际应用代码)
JavaScript中通过array.filter()实现数组的数据筛选、数据清洗和链式调用,JS中数组过滤器的使用详解(附实际应用代码)
|
2月前
|
Go
Golang语言之数组(array)快速入门篇
这篇文章是关于Go语言中数组的详细教程,包括数组的定义、遍历、注意事项、多维数组的使用以及相关练习题。
29 5
|
3月前
|
存储 数据处理 索引
如何删除 Python 数组中的值?
【8月更文挑战第29天】
125 8
|
3月前
|
索引 Python
向 Python 数组添加值
【8月更文挑战第29天】
39 8