Как да чета от stdin в Python

How Read From Stdin Python



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

Пример-1: Прочетете данни от stdin, като използвате функцията input ()

Функцията input () е най -използваната функция за получаване на въвеждане от потребителя. Създайте python файл със следния скрипт, за да вземете въвеждане от потребителя, докато не бъде натиснат клавиш „n“. Тук се създава безкраен цикъл, като се използва цикъл while. Първата функция input () се използва за вземане на данните от потребителя, а функцията print () се използва за отпечатване на входната стойност. След това функцията input () на скрипта се използва, за да помоли потребителя да продължи отново задачата или да излезе от скрипта. Ако потребителят натисне „n“ или „N“, итерацията на цикъла ще бъде спряна от оператора break; в противен случай цикълът ще повтори отново и ще вземе друг вход от потребителя. Функцията upper () се използва в скрипта за главни букви на стойността, дадена от потребителя.







# Определете безкраен цикъл

докато Вярно:

# Вземете информация от потребителя

inputVal= вход('Въведете произволен текст:н')

# Отпечатайте входната стойност

печат('Входната стойност е %s'%(inputVal))

# Поискайте следваща итерация

nextInput= вход('Искаш ли да продължиш? (Д/Н) ')

# Прекратете от цикъла, ако 'n' е натиснат

акоnextInput.горен() == 'Н':

прекъсване

# Отпечатайте съобщението за прекратяване

печат(„Програмата е прекратена.“)

Изход:

Следният подобен изход ще се появи след изпълнение на горния скрипт. Тук, ' LinuxHint „Е дал като първа входна стойност и е прекратен от скрипта за натискане на знака,„ n “.





Пример-2: Прочетете данни от stdin с помощта на sys.stdin

The sys.stdin е друга опция на Python да приема стандартен вход от потребителите от терминала. Той извиква функцията input () вътрешно и добавя „ н „След като въведете данните. Създайте python файл със следния скрипт, за да проверите използването на sys.stdin за да въведете стандартен вход. Тук цикълът „for-in“ се използва за вземане на въвеждането от потребителя безкрайно много пъти, докато потребителят иска да прекрати скрипта. След отпечатване на входната стойност, функция input () се използва, за да помолите потребителя да спре скрипта или не. Скриптът ще бъде прекратен, ако потребителят натисне „ и ' или ' И ‘. The Горна () функция се използва и тук за капитализиране на входната стойност.





# Импортиране на модул sys

внос sys


печат('Въведете произволен текст:')


# Вземете въвеждане с помощта на stdin

заinputValв sys.stdin:

# Отпечатайте входната стойност

печат('Входната стойност е:%s'% inputVal)


# Поискайте следващата итерация

nextInput= вход(„Искате ли да прекратите? (Д/Н) ')

# Прекратете цикъла, ако натиснете „y/Y“

акоnextInput.Лента().горен() == 'И':

прекъсване

иначе:

печат('Въведете произволен текст:')

Изход:

Следният подобен изход ще се появи след изпълнение на горния скрипт. Тук, ' Python програмиране „Е дал като първа входна стойност и е прекратен от скрипта за натискане на знака,„ y “.



Пример-3: Прочетете данни от stdin, като използвате fileinput

Fileinput е друг модул на Python, който приема стандартен вход. Редовете на текста могат да бъдат взети от терминала или файл чрез използване fileinput.input () . Ако не е предоставена стойност на аргумент в тази функция, тя ще приема вход от терминала и ако името на съществуващ файл е предоставено като стойност на аргумент, то ще вземе входа от файла. Създайте python файл със следния скрипт, за да вземете стандартен вход от терминала. Тук цикълът „for-in“ се използва като предишния пример за приемане на вход за безкрайни времена, докато потребителят иска да прекрати скрипта. След това функцията input () се използва, за да помоли потребителя да спре скрипта или не. Скриптът ще бъде прекратен, ако потребителят въведе ‘Quit’ или ‘Quit’ or ‘QUIT’ . The Горна () функция се използва и тук за капитализиране на входната стойност. The функция strip () се използва за премахване на допълнителните интервали от двете страни на входната стойност.

# Импортиране на модул за въвеждане на файлове

внос въвеждане на файл


печат('Въведете текста:')

'' '

Вземете въвеждане, като използвате функцията 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 ще приемат стандартния вход въз основа на техните изисквания, след като прочетат този урок.