Como ler de stdin em Python

How Read From Stdin Python



Receber informações do usuário é uma parte importante de qualquer linguagem de programação. A saída de muitos programas depende da entrada padrão. A maneira de obter informações do usuário é diferente para diferentes linguagens de programação. Existem muitas maneiras em python de ler a entrada padrão. o função input () é a forma mais comum de ler a entrada padrão, que é uma função incorporada. o sys.stdin é outra forma de ler a entrada padrão das chamadas função input () internamente. Python tem outro módulo chamado entrada de arquivo para ler a entrada padrão. o função input () deste módulo pode ser usado para ler a entrada padrão ou ler o conteúdo de um ou mais arquivos. Diferentes maneiras de ler a entrada padrão em Python foram explicadas neste tutorial.

Exame-1: Ler dados de stdin usando a função input ()

A função input () é a função mais usada para obter a entrada do usuário. Crie um arquivo Python com o seguinte script para obter a entrada do usuário até que a tecla ‘n’ seja pressionada. Aqui, um loop infinito é criado usando o loop while. A primeira função input () é usada para obter os dados do usuário, e a função print () é usada para imprimir o valor de entrada. Em seguida, a função input () do script é usada para solicitar ao usuário que continue a tarefa novamente ou saia do script. Se o usuário pressionar 'n' ou 'N', a iteração do loop será interrompida pela instrução break; caso contrário, o loop irá iterar novamente e obter outra entrada do usuário. A função upper () é usada no script para capitalizar o valor fornecido pelo usuário.







# Defina um loop infinito

enquanto Verdade:

# Aceite a opinião do usuário

inputVal= entrada('Digite qualquer texto: n')

# Imprime o valor de entrada

imprimir('O valor de entrada é% s'%(inputVal))

# Peça a próxima iteração

nextInput= entrada('Você quer continuar? (S / N) ')

# Termina do loop se 'n' for pressionado

E senextInput.superior() == 'N':

pausa

# Imprima a mensagem de rescisão

imprimir('Programa encerrado.')

Saída:

A seguinte saída semelhante aparecerá após a execução do script acima. Aqui, ' LinuxHint ‘Forneceu como o primeiro valor de entrada e terminou no script para pressionar o caractere‘ n ’.





Exemplo 2: ler dados de stdin usando sys.stdin

o sys.stdin é outra opção do Python para obter a entrada padrão dos usuários do terminal. Ele chama a função input () internamente e adiciona ‘ n ‘Depois de obter a entrada. Crie um arquivo python com o seguinte script para verificar o uso do sys.stdin para obter a entrada padrão. Aqui, o loop ‘for-in’ é usado para receber a entrada do usuário infinitas vezes até que o usuário queira encerrar o script. Depois de imprimir o valor de entrada, o função input () é usado para pedir ao usuário para parar o script ou não. O script será encerrado se o usuário pressionar ‘ e ' ou ' E ‘. o função superior () é usado aqui também para capitalizar o valor de entrada.





# Módulo de importação sys

importar sys


imprimir('Digite qualquer texto:')


# Aceite a entrada usando stdin

parainputValno sys.Stdin:

# Imprime o valor de entrada

imprimir('O valor de entrada é:% s'% inputVal)


# Peça a próxima iteração

nextInput= entrada('Você quer encerrar? (S / N) ')

# Termina do loop se 'y / Y' for pressionado

E senextInput.faixa().superior() == 'E':

pausa

outro:

imprimir('Digite qualquer texto:')

Saída:

A seguinte saída semelhante aparecerá após a execução do script acima. Aqui, ' Programação Python ‘Forneceu como o primeiro valor de entrada e terminou no script para pressionar o caractere‘ y ’.



Exemplo-3: Leia dados de stdin usando fileinput

O fileinput é outro módulo do Python para receber a entrada padrão. As linhas de texto podem ser retiradas do terminal ou de um arquivo usando fileinput.input () . Se nenhum valor de argumento for fornecido nesta função, ela receberá a entrada do terminal e se o nome de um arquivo existente for fornecido como um valor de argumento, ela obterá a entrada do arquivo. Crie um arquivo python com o seguinte script para obter a entrada padrão do terminal. Aqui, o loop ‘for-in’ é usado como o exemplo anterior para receber a entrada infinitas vezes até que o usuário queira encerrar o script. Em seguida, a função input () é usada para pedir ao usuário para parar o script ou não. O script será encerrado se o usuário digitar ‘Sair’ ou ‘Sair’ ou ‘QUIT’ . o função superior () é usado aqui também para capitalizar o valor de entrada. o função strip () é usado para remover os espaços extras de ambos os lados do valor de entrada.

# Importar módulo de entrada de arquivo

importar entrada de arquivo


imprimir('Digite o texto:')

'' '

Pegue a entrada usando a função fileinput.input () e

pressione ctrl + D para terminar de pegar o valor de entrada

'' '


parainputValno entrada de arquivo.entrada():

# Termina do loop se 'quit' for digitado

E seinputVal.faixa().superior() == 'SAIR':

pausa


# Imprime o valor de entrada

imprimir('O valor de entrada é:',inputVal)

imprimir('Digite o texto:')

Saída:

A seguinte saída semelhante aparecerá após a execução do script acima. Aqui, ‘Learn Python from LinuxHint.com’ é fornecido como o primeiro valor de entrada e termina no script para digitar a palavra ‘quit’. Você tem que se lembrar de uma coisa enquanto recebe a entrada do terminal usando o entrada de arquivo módulo. Ou seja, você deve pressionar ctrl + d após obter a entrada.

Você deve fornecer o nome do arquivo como o valor do argumento do fileinput.input () função se você deseja obter dados do arquivo em vez do terminal.

Conclusão:

Três maneiras diferentes de obter entrada do terminal foram mostradas neste tutorial usando três exemplos simples. Nenhum módulo é necessário para usar o função input () para obter a entrada. O módulo sys é necessário para importar para usar sys.stdin , e as módulo de entrada de arquivo é necessário importar para usar fileinput.input () no script para obter a entrada padrão. Espero que os usuários de Python obtenham a entrada padrão com base em seus requisitos depois de ler este tutorial.