Python 矩阵2025年4月16日 | 阅读 8 分钟 在本教程中,我们将学习 Python 矩阵。在 Python 中,矩阵对象类似于嵌套列表,因为它们是多维的。我们将了解如何使用 Numpy 数组创建矩阵。在此之后,我们将查看各种矩阵操作方法和示例,以便更好地理解。 Python 中的矩阵是什么?Python 中的矩阵是矩形的 Numpy 数组。此数组必须是二维的。它包含存储在数组的行和列中的数据。在 Python 矩阵中,水平排列的项目称为“行”,垂直排列的项目称为“列”。行和列堆叠在一起,就像嵌套列表一样。如果一个矩阵包含 r 行和 c 列,其中 r 和 c 是正整数,则 r x c 决定了此矩阵对象的阶。 我们可以在矩阵中存储字符串、整数和其他数据类型的对象。数据以矩阵的行和列堆栈的形式存储。矩阵是数学和科学计算中至关重要的数据结构。在 Python 中,我们将列表的列表或嵌套列表视为矩阵,因为 Python 没有内置的矩阵对象类型。 在本教程中,我们将介绍以下矩阵操作方法列表。
Python 中的矩阵如何工作?我们通过二维数组编写数据来创建矩阵。方法如下: 示例 它显示了一个具有 3 行 5 列的矩阵,因此其维度为 3×5。该矩阵中的数据由整数数据类型对象组成。第一行 Row1 的值为 (2, 3, 5, 7, 6),Row2 的值为 (3, 2, 6, 7, 2),Row3 的值为 5, 7, 2, 6, 1。关于列,Column1 的值为 (2, 3, 5),Column2 的值为 (3, 2, 7),依此类推。 示例 它显示了一个具有 3 行 3 列的矩阵,因此其维度为 3×3。行数和列数相等的矩阵称为方阵。 类似地,Python 允许用户将数据存储在 m x n 维矩阵中。我们可以对类似矩阵的结构执行矩阵加法、乘法、转置和其他操作。 Python 中矩阵对象的实现并不直接。我们可以使用数组创建 Python 矩阵,并以类似的方式使用它们。 NumPy 数组科学计算软件 NumPy 支持强大的 N 维数组对象。在程序中使用 NumPy 是先决条件。 安装后可以使用并导入 NumPy。了解 NumPy 数组的基础知识将有助于理解矩阵。 NumPy 提供具有多个维度项目的数组。以下是说明: 代码 输出 ['4' '6' 'Harry'] Data type of array object: <class 'numpy.ndarray'> 我们可以看到,Numpy 数组属于 ndarray 类。 使用 Numpy 数组创建矩阵的示例考虑我们创建学生分数记录的场景。我们将记录学生姓名以及 Python 编程和矩阵两门学科的分数。我们将使用 numpy 数组创建一个二维矩阵,然后对其进行重塑。 代码 输出 The matrix is: [['Itika' '89' '91'] ['Aditi' '96' '82'] ['Harry' '91' '81'] ['Andrew' '87' '91'] ['Peter' '72' '79']] 使用 Numpy Matrix 方法创建矩阵的示例我们可以使用 numpy.matrix 创建一个二维矩阵。 代码 输出 [[3 4] [5 6]] 访问矩阵的值可以使用矩阵的索引来访问其中存储的元素。使用我们用于二维数组的相同方法可以访问存储在矩阵中的数据。 代码 输出 ['Itika' '89' '91'] Andrew's marks in Matrix subject: 91 创建二维 Numpy 数组或矩阵的方法有几种方法可以创建二维 NumPy 数组,从而创建矩阵。为行和列提供条目 我们可以提供整数、浮点数甚至复数。使用数组方法的 dtype 属性,我们可以指定所需的数据类型。 代码 输出 Array of data type integers: [[4 2 7 3] [2 8 5 2]] Array of data type float: [[1.5 2.2 3.1] [3. 4.4 2. ]] Array of data type complex numbers: [[5.+0.j 3.+0.j 6.+0.j] [2.+0.j 5.+0.j 7.+0.j]] 零和一数组代码 输出 [[0. 0.] [0. 0.] [0. 0.]] [[1 1 1 1] [1 1 1 1]] 在这里,我们将 dtype 指定为 64 位。 使用 arange() 和 shape() 方法代码 输出 [0 1 2 3 4] [[0 1 2] [3 4 5]] Python 矩阵运算Python 矩阵加法我们将对两个矩阵进行相加,并通过给定的矩阵使用嵌套的 for 循环。 代码 输出 The sum of the matrices is = [[27, 46, 11], [49, 17, 21], [23, 8, 17]] Python 矩阵乘法Python 矩阵乘法运算符 在 Python 中,@ 被称为乘法运算符。让我们看一个例子,我们将使用此运算符来乘两个矩阵。 代码 输出 [[44 26] [68 42]] 不使用 Numpy 进行 Python 矩阵乘法另一种乘两个矩阵的方法是使用嵌套循环。这是一个演示示例。 代码 输出 [66, 60, 64, 62] [108, 86, 124, 90] [85, 67, 103, 68] Python 矩阵求逆当需要解方程以获得满足方程的未知变量的值时,就会计算矩阵的逆,这就像我们在常规数学中所做的矩阵的倒数一样。矩阵的逆是与原始矩阵相乘时得到单位矩阵的矩阵。只有非奇异矩阵才能有逆。非奇异矩阵的行列式非零。 代码 输出 [[-3.33333333e-01 -7.40148683e-17 3.33333333e-01] [ 1.25000000e-01 -3.75000000e-01 3.12500000e-01] [ 2.50000000e-01 2.50000000e-01 -3.75000000e-01]] Python 矩阵转置不使用 Numpy 进行 Python 矩阵转置 矩阵的转置涉及行和列的交换。它具有符号 X'。如果原始矩阵 X 是一个 3x4 矩阵,那么 X' 将成为一个 4x3 矩阵。我们将对象放在矩阵 X 的第 i 行第 j 列,放在矩阵 X' 的第 j 行第 i 列。 代码 输出 [4, 3, 7] [6, 7, 3] [7, 2, 7] [8, 7, 5] 使用 Numpy 进行 Python 矩阵转置 我们可以使用 Numpy 中的 matrix.transpose() 方法来获取矩阵的转置。 代码 输出 [[5 4] [7 2] [6 4]] 将 Python 矩阵转换为数组我们可以使用 ravel 和 flatten 函数将 Python 矩阵转换为 Python 数组。 代码 输出 [[4 6 7 5 2 6 6 3 6]] [4 6 7 5 2 6 6 3 6] [4 6 7 5 2 6 6 3 6] 下一个主题Python 单元测试 |
在本教程中,我们将学习 Python 中的镜像字符。镜像字符问题可能会在技术面试中被问到。首先,我们理解字符串中的镜像字符。如果两个字符串在字母位置上相同,一个在前面,一个在...
阅读 3 分钟
PyDev 是一个开源的 Python 集成开发环境(IDE)。它旨在为 Python 程序员提供完整的开发环境。此外,它构建在 Eclipse 平台之上,并支持调试、代码分析、代码补全等各种功能。PyDev...
5 分钟阅读
众所周知,Python 是一种标准的脚本语言,因为它具有多功能特性。在下面的教程中,我们将了解如何借助 tkinter 和... 构建一个 GUI 应用程序来关闭、重启和注销计算机。
阅读 24 分钟
有时在使用Python Shell时,我们得到杂乱无章的输出或编写了不必要的语句,我们希望出于其他原因清除屏幕。"cls"和"clear"命令用于清除终端(终端窗口)。如果您在IDLE中使用Shell,那么...
阅读 2 分钟
在接下来的教程中,我们将了解 Python 编程语言中的 Difflib 模块。我们将讨论此模块的功能以及一些基于其类的示例。那么,让我们开始吧。了解 Python Difflib 模块 Difflib 是 Python 编程中的一个内置模块...
7 分钟阅读
Flask Python 广泛使用的 Flask 微型 Web 框架以其简单易用而闻名。您可以使用 Flask 指定与我们应用程序中特定操作相对应的路由 (URL)。当用户访问时,Flask 将执行相关函数并将结果返回给用户...
阅读 4 分钟
Python 允许文件操作(创建、保存、读取、写入、删除文件等等)。Python 简化了多种文件格式的保存,并保存了多种文件格式。JSON 是 JavaScript 对象表示法。数据通过基于文本的计算机语言脚本(可执行)文件存储和发送。Python 的 json 模块支持 JSON。JSON...
阅读 3 分钟
如何使用地理位置 API 查找用户位置 在本教程中,我们将学习通过向地理位置 API 提供 IP 地址来查找用户位置。地理编码是一种将位置描述转换为经度和纬度对的技术……
阅读 4 分钟
Boost Python 模块是一个 C++ 库,可以实现 Python 和 C++ 之间的无缝互操作性。它提供了将 C++ 类和函数公开给 Python 的工具,允许它们像用 Python 编写的一样使用。使用 Boost Python,可以定义 C++ 类...
阅读 10 分钟
抽认卡是最经过验证的学习辅助工具之一,帮助从语言学习者到医学生实现记忆目标。由于 Anki 或 Anki 等程序的丰富功能和灵活设置,数字抽认卡变得越来越有用...
阅读25分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India