在Python中进行I / O的最快方法是什么?

时间:2013-07-21 01:41:05

标签: python performance input io

就像那些编程挑战一样,我现在做以下事情:

对于单个变量:

x = int(sys.stdin.readline())

对于许多变量

A, B, C = map(int,sys.stdin.readline().split())

这是最优的还是有更快的方式?

2 个答案:

答案 0 :(得分:1)

如果你有numpy可用,numpy加载功能非常快。例如:

>>> import numpy
>>> s = '1\n2\n3\n4\n'
>>> data = numpy.fromstring(s, dtype=int, sep='\n')
>>> data
array([1, 2, 3, 4])

此示例从字符串加载,但您也可以使用numpy.fromfile直接从打开的文件加载。

答案 1 :(得分:0)

Python的sys库有2个文件对象 stdin stdout STDIN STOUT 相关联。 stdin 文件对象有 readline() readlines()方法& stdou 文件对象有 write()方法。我们可以在Python中使用这些方法进行快速I / O.

访问here