python无法输入最后一行并输出

我想输入:
1 2 3
4 5 6
7 8 9
然后转化为一个矩阵mat,但每次运行结果都少了最后一行‘7 8 9’,请问是什么原因呢?
代码如下

import sys

mat = []

while 1:

try:

line = sys.stdin.readline().split()

row = list(map(int, line)) # [1, 2, 3]

mat.append(row) # 形成矩阵

print(mat)

except EOFError:

print('break')

break

结果如下:
python无法输入最后一行并输出


回答:

>>> import sys

>>> mat = []

>>>

>>> while 1:

... try:

... line = sys.stdin.readline().split()

... row = list(map(int, line)) # [1, 2, 3]

... mat.append(row) # 形成矩阵

... print(mat)

... except EOFError:

... print('break')

... break

...

1 2 3

[[1, 2, 3]]

4 5 6

[[1, 2, 3], [4, 5, 6]]

7 8 9

[[1, 2, 3], [4, 5, 6], [7, 8, 9]]

[[1, 2, 3], [4, 5, 6], [7, 8, 9], []]

Traceback (most recent call last):

File "<stdin>", line 6, in <module>

KeyboardInterrupt

以上是 python无法输入最后一行并输出 的全部内容, 来源链接: utcz.com/a/50131.html

回到顶部