Mais
Como você lê a partir de stdin?
I'estou tentando fazer alguns dos desafios code golf, mas todos eles requerem que a entrada seja retirada do stdin
. Como faço para conseguir isso em Python?
1378
3
Você poderia utilizar o módulo
fileinput
:fileinput
irá percorrer todas as linhas na entrada especificada como nomes de arquivos dados em argumentos de linha de comando, ou a entrada padrão se nenhum argumento for fornecido.Nota:
line
conterá uma nova linha; para removê-la utilizeline.rstrip()
Há algumas maneiras de o fazer.
sys.stdin` é um objeto semelhante a um arquivo no qual você pode chamar as funções
read
oureadlines
se você quiser ler tudo ou se você quiser ler tudo e dividi-lo por newline automaticamente. (Você precisaimportar o sys
para que isto funcione).Se você quiser pedir ao usuário para entrada, você pode utilizar
raw_input
em Python 2.X, e apenasinput
em Python 3.Se você realmente quiser apenas ler as opções de linha de comando, você pode acessá-las através da lista sys.argv.
Você provavelmente encontrará este artigo do Wikibook sobre I/O em Python para ser uma referência útil também.
Aqui está de Aprendendo Python:
No Unix, podias testá-lo, fazendo algo como:
No Windows ou no DOS, você faria: