3

我想在线测试程序,因为我工作的地方没有 python 编译器。有许多在线网站,例如 ideone、codepad 和 complieonline。但是,我注意到键盘不接受输入数据,虽然 ideone 输入数据,但它一次只接受一个输入数据。例如,我想在 compileonline 上测试这个程序

PREFIX = 'Simon says '

line = raw_input('Enter: ')
while line:
    if line.startswith(PREFIX):
        print line[len(PREFIX):]
    line = raw_input('Enter: ')

我输入了我的输入并通过管道将它们分开(如网站说明所述),但不断收到此错误消息

Executing the code....
$python /tmp/135731949523855.py 
Enter: Enter: Enter: Traceback (most recent call last):
File "/tmp/135731949523855.py", line 9, in ?
line = raw_input('Enter: ')
EOFError: EOF when reading a line

如何输入多个条目来测试我的程序?我如何在这些在线网站上输入多个条目,否则是否有另一个示例测试使用我的代码而不需要用户输入。

4

1 回答 1

2

好吧,考虑在您的代码中使用硬编码输入(将“raw_input”函数转换为您除了从用户那里获得的东西)。这可能是一个很好的解决方案。

您拥有的与 raw_input 非常接近的选项之一是使用 sys.argv:

import sys
print sys.argv[1]

Compileonline 在代码下方为您提供了添加命令行参数的选项。

但是,在 PythonAnywhere.com 上,您的代码似乎运行良好 :) 您可能想在那里尝试一下。

祝你好运:)

于 2013-01-05T00:46:57.077 回答