📜  如何在 python 中获取矩阵输入(1)

📅  最后修改于: 2023-12-03 15:24:20.187000             🧑  作者: Mango

在 Python 中获取矩阵输入

在 Python 中,获取矩阵输入的方法有很多种。下面介绍几种常用的方法。

方法一:使用 for 循环

使用 for 循环获取矩阵输入是一种简单直接的方法。具体步骤如下:

  1. 定义一个空列表 matrix,存放矩阵的数据。

  2. 使用 for 循环,依次输入每一行矩阵的数据。

  3. 将每一行矩阵的数据添加到 matrix 中。

代码如下:

# 定义一个空列表 matrix
matrix = []

# 获取矩阵的行数和列数
rows = int(input("请输入矩阵的行数:"))
cols = int(input("请输入矩阵的列数:"))

# 使用 for 循环,输入每一行矩阵的数据
for i in range(rows):
    row = [int(x) for x in input().split()]
    matrix.append(row)

print("输入的矩阵为:")
for row in matrix:
    print(row)

如上代码执行后,输出结果为:

请输入矩阵的行数:2
请输入矩阵的列数:2
1 2
3 4
输入的矩阵为:
[1, 2]
[3, 4]
方法二:使用列表解析

使用列表解析获取矩阵输入也是一种简单直接的方法。具体步骤如下:

  1. 定义一个空列表 matrix,存放矩阵的数据。

  2. 使用列表解析,在一行代码中获取矩阵的数据。

代码如下:

# 定义一个空列表 matrix
matrix = []

# 获取矩阵的行数和列数
rows = int(input("请输入矩阵的行数:"))
cols = int(input("请输入矩阵的列数:"))

# 使用列表解析,输入整个矩阵的数据
matrix = [[int(x) for x in input().split()] for i in range(rows)]

print("输入的矩阵为:")
for row in matrix:
    print(row)

如上代码执行后,输出结果为:

请输入矩阵的行数:2
请输入矩阵的列数:2
1 2
3 4
输入的矩阵为:
[1, 2]
[3, 4]
方法三:使用 NumPy 库

使用 NumPy 库获取矩阵输入是一种更加高效的方法。具体步骤如下:

  1. 导入 NumPy 库。

  2. 使用 NumPy 库的 reshape() 方法,将用户输入的一维列表转换成二维矩阵。

代码如下:

import numpy as np

# 获取矩阵的行数和列数
rows = int(input("请输入矩阵的行数:"))
cols = int(input("请输入矩阵的列数:"))

# 获取矩阵的数据,转换成 NumPy 数组
data = np.array([int(x) for x in input().split()])

# 将一维数组转换成二维数组
matrix = data.reshape(rows, cols)

print("输入的矩阵为:")
print(matrix)

如上代码执行后,输出结果为:

请输入矩阵的行数:2
请输入矩阵的列数:2
1 2 3 4
输入的矩阵为:
[[1 2]
 [3 4]]

这里需要注意,使用 NumPy 库获取矩阵输入需要用户输入的数据是以空格分隔的一维列表,而不是每一行的数据。如果用户输入的是每一行的数据,那么需要使用方法一或方法二进行转换。