Вы уверены, что ваше длинное слово 10k не содержит перевода строки?
raw_input ([приглашение]) * +1011 *
Если аргумент подсказки присутствует, он записывается в стандартный вывод без завершающей строки. Затем функция читает строку из ввода, преобразует ее в строку (убирая завершающий перевод строки) и возвращает ее. Когда EOF читается, EOFError повышается.
...
Если был загружен модуль readline , то raw_input () будет использовать его для обеспечения сложных функций редактирования строк и истории.
Не существует максимального ограничения (в python) буфера, возвращаемого raw_input
, и, поскольку я протестировал некоторую большую длину ввода для stdin , я не смог воспроизвести ваш результат. Я попытался найти в Интернете информацию об этом, но ничего не смог найти, чтобы помочь мне ответить на ваш вопрос.
мои тесты
:/tmp% python -c 'print "A"*1000000' | python -c 'print len (raw_input ())';
1000000
:/tmp% python -c 'print "A"*210012300' | python -c 'print len (raw_input ())';
210012300
:/tmp% python -c 'print "A"*100+"\n"+"B"*100' | python -c 'print len (raw_input ())';
100