Altro
Come si legge da stdin?
Sto cercando di fare alcune delle sfide code golf, ma tutte richiedono che l'input sia preso da stdin
. Come posso ottenerlo in Python?
1378
3
Potreste usare il modulo
fileinput
:fileinput
eseguirà un ciclo di tutte le linee in input specificate come nomi di file dati negli argomenti della linea di comando, o lo standard input se non sono forniti argomenti.Nota:
line
conterrà un newline finale; per rimuoverlo usaline.rstrip()
Ci sono alcuni modi per farlo.
sys.stdin
è un oggetto simile a un file su cui puoi chiamare le funzioniread
oreadlines
se vuoi leggere tutto o se vuoi leggere tutto e dividerlo per newline automaticamente. (È necessarioimportare sys
perché questo funzioni).Se volete promuovere l'utente per l'input, potete usare
raw_input
in Python 2.X, e soloinput
in Python 3.Se in realtà volete solo leggere le opzioni della linea di comando, potete accedervi tramite la lista sys.argv.
Probabilmente troverete anche questo articolo di Wikibook sull'I/O in Python come utile riferimento.
Ecco da Learning Python:
Su Unix, si potrebbe testare facendo qualcosa come
Su Windows o DOS, si potrebbe fare: