Как читать из стандартного ввода в Python

How Read From Stdin Python



Получение информации от пользователя - важная часть любого языка программирования. Вывод многих программ зависит от стандартного ввода. Способ получения ввода от пользователя отличается для разных языков программирования. В python существует множество способов чтения из стандартного ввода. В функция input () является наиболее распространенным способом чтения из стандартного ввода, который является встроенной функцией. В sys.stdin Другой способ - прочитать со стандартного ввода вызовы функция input () внутренне. У Python есть еще один модуль с именем ввод файла для чтения стандартного ввода. В функция input () этого модуля можно использовать для чтения стандартного ввода или чтения содержимого из одного или нескольких файлов. В этом руководстве были объяснены различные способы чтения из стандартного ввода в Python.

Пример-1: считывание данных из стандартного ввода с помощью функции input ()

Функция input () - это наиболее часто используемая функция для приема данных от пользователя. Создайте файл python со следующим сценарием, чтобы принимать ввод от пользователя, пока не будет нажата клавиша «n». Здесь бесконечный цикл создается с помощью цикла while. Первая функция input () используется для получения данных от пользователя, а функция print () используется для печати входного значения. Затем функция скрипта input () используется, чтобы попросить пользователя снова продолжить задачу или выйти из скрипта. Если пользователь нажимает «n» или «N», итерация цикла будет остановлена ​​оператором break; в противном случае цикл будет повторяться снова и примет другой ввод от пользователя. Функция upper () используется в скрипте для использования значения, заданного пользователем, с заглавной буквы.







# Определить бесконечный цикл

в то время как Правда:

# Принимать ввод от пользователя

inputValзнак равно Вход('Введите любой текст: п')

# Распечатать входное значение

Распечатать('Введено значение% s'%(inputVal))

# Запросить следующую итерацию

nextInputзнак равно Вход('Вы хотите продолжить? (Да / Нет) ')

# Завершить цикл, если нажата 'n'

еслиnextInput.верхний() == 'N':

перерыв

# Распечатать сообщение о завершении

Распечатать(«Программа прекращена».)

Выход:

Следующий аналогичный вывод появится после выполнения вышеуказанного сценария. Здесь, ' LinuxHint ‘Задано как первое входное значение и завершено из сценария нажатия символа‘ n ’.





Пример-2: чтение данных со стандартного ввода с помощью sys.stdin

В sys.stdin - это еще один вариант Python для получения стандартного ввода от пользователей с терминала. Он вызывает внутреннюю функцию input () и добавляет ' п ‘После внесения вклада. Создайте файл python со следующим сценарием, чтобы проверить использование sys.stdin принять стандартный ввод. Здесь цикл «for-in» используется для получения ввода от пользователя бесконечное количество раз, пока пользователь не захочет завершить сценарий. После печати входного значения функция input () используется, чтобы попросить пользователя остановить скрипт или нет. Сценарий будет остановлен, если пользователь нажмет ‘ а также ' или ' А ТАКЖЕ ‘. В функция upper () здесь также используется для написания входного значения с заглавной буквы.





# Импортировать модуль sys

Импортировать sys


Распечатать('Введите любой текст:')


# Принимаем ввод с помощью stdin

дляinputValв sys.стандартный ввод:

# Распечатать входное значение

Распечатать('Входное значение:% s'% inputVal)


# Запросить следующую итерацию

nextInputзнак равно Вход('Вы хотите прекратить? (Да / Нет) ')

# Завершить цикл при нажатии 'y / Y'

еслиnextInput.полоска().верхний() == 'А ТАКЖЕ':

перерыв

еще:

Распечатать('Введите любой текст:')

Выход:

Следующий аналогичный вывод появится после выполнения вышеуказанного сценария. Здесь, ' Программирование на Python ‘Задано как первое входное значение и завершено из сценария нажатия символа‘ y ’.



Пример-3: Чтение данных из stdin с помощью fileinput

Fileinput - это еще один модуль Python для стандартного ввода. Строки текста можно взять из терминала или файла, используя fileinput.input () . Если в этой функции не указано значение аргумента, она будет принимать входные данные с терминала, а если имя существующего файла указано в качестве значения аргумента, она будет принимать входные данные из файла. Создайте файл python со следующим сценарием, чтобы получать стандартный ввод с терминала. Здесь цикл «for-in» используется как предыдущий пример для приема ввода бесконечное количество раз, пока пользователь не захочет завершить сценарий. Затем используется функция input (), чтобы попросить пользователя остановить скрипт или нет. Скрипт будет остановлен, если пользователь введет «Выйти», «Выйти» или «ВЫЙТИ» . В функция upper () здесь также используется для написания входного значения с заглавной буквы. В strip () функция используется для удаления лишних пробелов с обеих сторон входного значения.

# Импортировать модуль fileinput

Импортировать ввод файла


Распечатать('Введите текст:')

'' '

Введите данные с помощью функции fileinput.input () и

нажмите ctrl + D, чтобы завершить ввод входного значения

'' '


дляinputValв ввод файла.Вход():

# Завершить цикл, если набрано quit

еслиinputVal.полоска().верхний() == 'ПОКИДАТЬ':

перерыв


# Распечатать входное значение

Распечатать('Входное значение:',inputVal)

Распечатать('Введите текст:')

Выход:

Следующий аналогичный вывод появится после выполнения вышеуказанного сценария. Здесь в качестве первого входного значения указано «Learn python from LinuxHint.com», которое завершается сценарием для ввода слова «quit». Вы должны помнить одну вещь, принимая ввод с терминала с помощью ввод файла модуль. То есть вы должны нажать ctrl + d после ввода ввода.

Вы должны указать имя файла в качестве значения аргумента fileinput.input () функция, если вы хотите брать данные из файла, а не из терминала.

Заключение:

В этом руководстве на трех простых примерах были показаны три различных способа ввода данных с терминала. Для использования функция input () для ввода. Модуль sys требуется импортировать для использования sys.stdin , а модуль ввода файлов требуется для импорта для использования fileinput.input () в скрипте для стандартного ввода. Я надеюсь, что после прочтения этого руководства пользователи Python воспользуются стандартным вводом в соответствии со своими требованиями.