2017-04-16 122 views
-1

如何通过用户输入将值插入矩阵? 我有这样的代码。如何通过用户输入将值输入矩阵?

n,m = raw_input().split(' ') 
matrix = [[0 for x in range(int(n))] for y in range(int(m))] 

应该如何看起来像:

user input : 
2 2 #dementions of matrix 
1 2 #matrix[1][1] = 1; #matrix[2][1] = 2 
3 4 #matrix[2][1] = 3; #matrix[2][2] = 4 

output : 
1 2 #matrix[1][1] = 1; #matrix[2][1] = 2 
3 4 #matrix[2][1] = 3; #matrix[2][2] = 4 
+0

以及如何计算矩阵的lenght? –

+0

你真的想阻止用户使用逗号作为分隔符吗?你真的不希望每行都有提示,甚至没有说第一个输入行包含维度,其他行是矩阵行?你真的不想错误检查?你真的希望矩阵从'matrix [1] [1]'开始,而不是Python标准'matrix [0] [0]'? (你的代码是基于零的,而你的例子使用基于一个的。) –

+0

是的,我做的!它只是像在公司面试的培训任务,我想通过做这个任务来训练。当我尝试做这件事时,我遇到了一个问题。该任务不需要使用逗号作为分隔符,因为测试程序将在输入位置放置值。这是任务的条件 –

回答

1

这里是采取在python矩阵输入代码:

n,m=map(int,raw_input().split()) 
a=n*[m*[0]] 
j=0 
for i in range (0,n): 
    a[i][j]=map(int,raw_input().split()) 
    j+=1 
j=0 
for i in range (0,n): 
    print a[i][j] 
    j+=1 
+0

当我运行该代码(相当于Python 3中的代码)时,打印输出看起来不错,但'a'的实际结果是[[[1,2],[3,4]],[[1,2 ],[3,4]]],这不是我们想要的。 –