我有一个很长的数字列表,我想通过一个原始的输入输入输入到我的代码中。它包括通过SPACES
和ENTER/RETURN
隔开的数字。列表看起来像this。当我尝试使用函数raw_input,并复制粘贴长的数字列表时,我的变量只保留第一行数字。这是我目前为止的代码:
def main(*arg):
for i in arg:
print arg
if __name__ == "__main__": main(raw_input("The large array of numbers"))
如何让我的代码继续读取其余的数字? 或者如果不可能,我可以让我的代码以任何方式确认输入吗?在
注:虽然这是一个ProjectEuler问题,但我不希望代码能回答ProjectEuler问题,也不希望有人建议对数字进行硬编码。只是建议把数字输入我的代码。在
我想你真正想要的是通过
sys.stdin
直接读stdin
。但是您需要接受这样一个事实:应该有一种机制来停止接受来自stdin
的任何数据,在本例中,通过传递EOF
字符是可行的。一个EOF
字符通过组合键[CNTRL]+d
传递如果我正确地理解了您的问题,我认为这段代码应该可以工作(假设它是在Python2.7中):
(代码取自:Raw input across multiple lines in Python)
PS:或者更好,你可以在一行里做同样的事情!在
^{pr2}$(代码取自:Input a multiline string in python)
相关问题 更多 >
编程相关推荐