2013-07-19 75 views
2

现在我正在使用sys.stdin.readline(),但我很好奇它是否被认为使用map(int,sys.stdin.readline())很慢或者它是否合理, .stdin“或其他内容(用于批量输入)。在Python 2.7中获得输入的最快方式是什么?

+0

我只是问。 'input()'有什么问题? – rnbcoder

+0

@mbcoder'input()'用于提示用户键入内容.OP大概是想从一个文件或其他来源传送数据。 – SethMMorton

回答

1

如果数据通过stdin流式传输到程序,则显式读取标准输入是您可以获得的“最快”。你的两条轮廓都可以做到这一点。我个人更喜欢

for line in sys.stdin 
    process(line) 

成语,如果这适用于你的情况。在任何情况下,通过直接从标准输入中读取,理论上每秒可以处理数千兆字节的数据,工作流程的瓶颈可能在其他地方。

您可以在这里创建不同方法的主要区别是,在一类情况下,您可以在处理它之前将整个输入读入内存,而在另一类方法中,您可以动态分段处理输入。根据整体输入的大小,这种差异可能是相关的或不相关的。

相关问题