@RUSTIK1023

Как ввести несколько строк в стандартный ввод python?

Я пытаюсь поступить кое в какое место, где изучают python. Решал пробные задачи, наткнулся на какую - то странную. Условия:

В каждой строке стандартного ввода найдите слова, в которых... (далее не относящаяся к вопросу информация).

Формат ввода
Вводятся строки слов, записанных через пробел.

Формат вывода
Выведите найденные слова, как описано в условии.

То есть, ввести надо несколько строк. Причём это не опечатка или странная формулировка. В примере вводятся натурально строки, разделяемые Enter'ом. Не указано никакого стоп слова, ничего подобного. Видимо, я не знаю про какой - то ещё способ ввода.
Надеюсь на вашу помощь
  • Вопрос задан
  • 118 просмотров
Решения вопроса 1
Vindicar
@Vindicar
RTFM!
Стандартный ввод - это файл, и его технически можно "прочитать до конца". Пример:
import sys
for line in sys.stdin:
    print('Got', repr(line))
print('Done')

Запусти как обычно, введи несколько строк, а потом в терминале (если под виндой) нажми Ctrl-Z, затем Enter.
Это пошлёт сигнал "конец файла", и дальнейшие попытки ввода через input() будут не успешными.

Также можешь записать строки в текстовик, и запустить файл с перенаправлением ввода:
python3 main.py < data.txt
Тогда скрипт тоже получит сигнал о конце ввода, когда файл закончится.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы