在线运行python代码时出现运行时错误,可离线运行

时间:2019-04-23 02:17:02

标签: python runtime-error

该代码成功脱机运行,但是,当上传到代码挑战网站时,它给了我RuntimeError。我不确定为什么要这么做。

我的代码:

inputinteger = int(input(""))
N = inputinteger

inputinteger2 = int(input(""))
M = inputinteger2

A = int(N / M)

if (N % M == 0):
    B = 0
    print("masing-masing " + str(A))
    print("bersisa " + str(B))

else:
    B = int(N % M);
    print("masing-masing " + str(A))
    print("bersisa " + str(B))

注意:英文中的“ masing-masing”表示“每个”。英文中的“ bersisa”意为“剩余”。

输入一些测试输入153可以得到预期的结果。但是,该代码在联机运行时不起作用。

谢谢您的帮助!

2 个答案:

答案 0 :(得分:2)

添加到上面的答案中。

在线质询网站未提供或可能未提供运行代码所需的输入。我建议您只需将input()raw_input()替换为系统可以使用的实际值。

答案 1 :(得分:1)

对此,我不是100%积极的,但这是一个最佳猜测,评论中没有足够的空间。

对于python 2,可能是您打算在代码中使用raw_input而不是input。话虽这么说,但是在测试python 2代码时,似乎很多在线解释器都无法使用inputraw_input。看到这里:https://www.tutorialspoint.com/execute_python_online.php  此处:https://paiza.io/en/projects/new?language=python。如果您输入以下代码:

a = raw_input()

它将失败,并出现EOF错误。我相信这是因为这些口译员实际上不允许输入。

如果将inputinteger = int(input(""))inputinteger2 = int(input(""))行分别更改为inputinteger = 4inputinteger2 = 5,我想您会发现您不再遇到运行时错误。 / p>

由于您说英语是第二语言,因此如果很难理解,这里的用语要简单一些。

某些旧的python版本不使用input。他们使用raw_input。尝试将input替换为raw_input

如果这不起作用,则可能是在线python不允许您使用inputraw_input。尝试使用不带input的代码。

编辑:

根据网站的显示方式,您似乎会收到您的输入,我会尝试将代码更改为以下内容:

inputinteger, inputinteger2 = raw_input("").split(" ")
N=int(inputinteger)
M=int(inputinteger2)

A=int(N/M);

if(N%M==0):
    B=0
    print("masing-masing "+str(A))
    print("bersisa "+str(B))

else:
    B=int(N%M);
    print("masing-masing "+str(A))
    print("bersisa "+str(B))

如果这不起作用,很抱歉,但是对于为什么它可能会失败我完全没有想法。我已经测试了他们在网站上提供的示例输入,并且效果很好。我们知道您有正确的答案,如果有任何含义。

编辑:进一步的解释:

因此网站表示您将以以下格式(例如)接收输入:

15 3

这意味着您仅收到一个字符串。该行:

inputinteger, inputinteger2 = raw_input("").split(" ")

正在接收单个字符串,并使用.split(" ")在空白区域的任一侧将其拆分为不同的值(存储在列表中)。所以本质上,它分配

inputinteger, inputinteger2 = ["15", "3"]

为您提供那些变量的适当值。从那里,您的旧代码可以完美运行。