【问题标题】:python3 EOFError after loop operation,there is exception循环操作后python3 EOFError,有异常
【发布时间】:2017-07-18 12:00:30
【问题描述】:

以下是我的 python 3 代码,在第 7 行我收到如下错误异常,有人可以帮助我吗? 提前致谢

Exception Name: EOFError
Exception Message: EOF when reading a line
Exception Line number: 7
5     B = []
6     C = []
7     A = [int(x) for x in input().split()]
8     B = [int(x) for x in input().split()]
9     for index in range(N):

我这样更改我的代码,因为如果列表之一为空,则会出现异常

def sum_c(arr):
    for index_C in arr:
        if index_C != arr[-1]:
            print(index_C, end=' ')
        else:
            print(index_C)


N = int(input())
while N != 0:
    A = []
    B = []
    A = [int(x) for x in input().split()]
    B = [int(x) for x in input().split()]
    if len(A) == 0 and len(B) != 0:
        sum_c(B)
    elif len(A) != 0 and len(B) == 0:
        sum_c(A)
    else:
        sum_c([sum(x) for x in zip(A, B)])
    N -= 1

【问题讨论】:

  • Line 7 很好,前提是您确实在使用 Python 3。与其提供异常详细信息,不如像 Python 一样提供。
  • @JimFasarakisHilliard OP 可能使用了一些外部 shell,比如 iPython。他们通常使用该格式报告错误
  • 在Pycharm中也不例外,但是在hackerrank用python3.5.2编译器进行在线编程时会出现这个异常

标签: python python-3.x input


【解决方案1】:

当调用input() 时,您的程序需要输入,但提供的标准输入已到达末尾(或可能为空)。

您只是没有提供输入。

【讨论】:

  • 我刚才在pycharm中测试了一下,输入第一个数组后,我输入了却什么也没有输入,然后输入enter再输入第二个数组,就会出现异常。像这种情况,应该怎么解决这个问题?
猜你喜欢
  • 2019-12-28
  • 2021-12-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-27
  • 2020-07-01
  • 2018-03-20
相关资源
最近更新 更多