我正在尝试用Python编写一个程序,它将两个2x2矩阵相乘。我在用户输入时遇到问题,用户需要输入2位代表矩阵的一行。
userin = int(input("Enter first 2x2 matrix: ")).split(' ')
print(userin)
我收到一条错误说:
对于带有基数为10的int()的无效文字:'3 4'
我想要的是:
Enter first 2x2 matrix: 3 4
Enter second 2x2 matrix: 7 9
Here's your matrix: [[3,4],[7,9]] #this is for testing purpose
我遇到用户输入问题,我想首先输入第一个数字,例如3,然后点击空格键输入第二个数字,即4个。不会添加split(' ')
就足够了?
答案 0 :(得分:2)
您可以使用list comprehension分组后转换为int,如:
userin = [int(x) for x in input("Enter first 2x2 matrix: ").split(' ')]
答案 1 :(得分:2)
以这种方式:
import numpy as np
row1 = list(map(int, input("Enter first 2x2 matrix: ").split(' ')))
row2 = list(map(int, input("Enter second 2x2 matrix: ").split(' ')))
arr = np.vstack((row1, row2))