竞赛讨论区 > 输入输出练习我这样写为什么会报错呢?
头像
coming!
发布于 2020-08-27 15:27
+ 关注

输入输出练习我这样写为什么会报错呢?

练习的题目是输入多行数据,每行数据的格式为‘a b',需要输出a+b。如果输入的数据为'0 0'就结束。我写的代码是这样的:
import sys
string = sys.stdin.readline()
while string != '0 0':
        [a,b] = list(map(int,string.split()))
        print(a+b)
        string = sys.stdin.readline()

但是这个时候会报错,位置在
[a,b] = list(map(int,string.split()))
原因是ValueError: not enough values to unpack (expected 2, got 0)。

我把代码改成下面这样又可以通过了,这是为什么呢?
import sys
string = sys.stdin.readline()
while string != '0 0':
        [a,b] = list(map(int,string.split()))
        if a==0 and b==0:
            break
        print(a+b)
        string = sys.stdin.readline()


全部评论

(4) 回帖
加载中...
话题 回帖

等你来战

查看全部

热门推荐