在 Python 中将列表转换为矩阵
- 在 Python 中使用循环和列表切片将列表转换为数组或矩阵
-
在 Python 中使用 Numpy 库中的
array()
函数将列表转换为数组或矩阵 -
在 Python 中使用 Numpy 库中的
asarray()
函数将列表转换为数组或矩阵
本教程将演示可用于在 Python 中将列表转换为矩阵的不同方法。
列表和矩阵都是 Python 提供的不同数据类型,用于在单个变量下存储多个项目。在这两种情况下,访问这些项目都变得相对容易。
不幸的是,我们不能对列表执行一些数学函数。因此,在大多数情况下,列表因此被转换为矩阵或数组,以成功执行特定的数学函数。
Python 不直接包含数组数据类型,但包含作为数组子类的矩阵,这为它们提供了数组的所有特性,除了它们自己的特性。在 Python 中有几种方法可以将列表转换为矩阵,下面都会提到。
在 Python 中使用循环和列表切片将列表转换为数组或矩阵
可以使用嵌套列表的概念制作一个简单的矩阵。在此方法中,任务是将包含给定项目的列表转换为列表。
这可以通过简单地利用循环、append()
函数和列表切片的概念来实现。在这里,我们将利用 while
循环来实现手头的任务。
以下代码使用循环和列表切片将列表转换为 Python 中的矩阵。
x = [2, 10, 20, 200, 4000]
mat = []
while x != []:
mat.append(x[:2])
x = x[2:]
print(mat)
输出:
[[2, 10], [20, 200], [4000]]
在上面的代码中,我们选择实现值 2
的列表切片。这可以根据用户的需要而变化,并且可以改变矩阵中元素的位置。
在 Python 中使用 Numpy 库中的 array()
函数将列表转换为数组或矩阵
NumPy 是一个必不可少的库,它使用户能够在 Python 中创建和操作数组和矩阵。
numpy.array
方法可以在 Python 中声明一个数组。可以直接将列表作为该函数的参数,使用该函数后的结果是一个矩阵。
需要将 NumPy 库导入 Python 代码才能运行该程序而不会出现任何错误。
以下代码使用 NumPy 库中的 array()
函数将列表转换为 Python 中的数组或矩阵。
import numpy as np
x = [12, 10, 20, 200, 4000]
mat = np.array(x)
print(mat)
输出:
[ 12 10 20 200 4000]
此外,NumPy 库还包含另一个函数 reshape()
,让程序员根据需要决定列表元素的形状和位置。
可以将以下代码视为实现 numpy.reshape()
函数的示例。
import numpy as np
x = np.array([12, 10, 20, 200])
shape = (2, 2)
print(x.reshape(shape))
输出:
[[ 12 10]
[ 20 200]]
在 Python 中使用 Numpy 库中的 asarray()
函数将列表转换为数组或矩阵
numpy.asarray()
函数的工作原理类似于 numpy.array()
函数。此函数可以将字典、列表等多种数据类型对象转换为简单的 NumPy 矩阵。
numpy.array()
方法在 numpy.asarray()
函数中调用,这就是为什么说前一个函数的语法只是后者的扩展。
在 numpy.asarray()
函数中,copy
标志默认为 False,这与 numpy.array()
函数将 copy
标志默认为 True 不同。
以下代码使用 NumPy 库中的 asarray()
函数将列表转换为 Python 中的数组或矩阵。
import numpy as np
x = [2, 10, 20, 200, 4000]
mat = np.asarray(x)
print(mat)
输出:
[ 2 10 20 200 4000]
Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.
LinkedIn