我正在尝试从标准输入读取,第一行指定矩阵的维数总是方矩阵
但我的代码只读取第一行
示例输入
3
0 2 3
2 4 1
3 1 4
我的代码
def read_matrix(formatted_string):
list_of_lists = [list(map(int, row.split())) for row in formatted_string.split('\n')]
return list_of_lists
x = input("enter the list of lists of numbers?")
print(read_matrix(x))
答案 0 :(得分:1)
您只询问行数而不是行本身的内容。以下代码显示了如何生成完整矩阵:
def read_matrix(count):
list_of_lists = [list(map(int, input('Enter a row: ').split())) for _ in range(count)]
return list_of_lists
x = input("enter the list of lists of numbers?")
print(read_matrix(int(x)))
它将首先向用户查询行数并将该数字传递给read_matrix
,这将要求用户输入每一行。
答案 1 :(得分:0)
然后从输入读取一行的函数, 将其转换为字符串(剥离尾随换行符)
请注意读取一行。但是在这里你试图通过一次调用input
来读取4行。您可能希望运行循环来获取此输入。