2013-07-21 3 views
2

Как и те, программирование проблем, прямо сейчас я делаю следующее:Что такое быстрый способ ввода-вывода в Python?

Для одной переменной:

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

для многих переменных

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

Является ли это оптимальным или существуют более быстрые способы?

+0

Для большинства случаев использования, Python нормальный Readline() является достаточным. Вы можете попробовать обернуть его в генератор для итераций, который встроен в файл IO. Я не знаю, есть ли общий «оптимальный» для всех случаев использования. Байт-мудрый ввод возможен, но не обязательно быстрее. – Mai

ответ

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.

0

библиотека SYS Python имеет 2 файла объекты стандартного ввода и стандартный вывод связанный с STDIN и STOUT. STDIN объект файла имеет Readline() и readlines() методов & stdou объект файл т имеет записи() метода. Мы можем использовать эти методы для быстрого ввода-вывода в Python.

визит here

Смежные вопросы