Kako berete iz stdin?
Poskušam opraviti nekaj izzivov code golf, vendar vsi zahtevajo, da se vnos vzame iz stdin
. Kako to dobim v Pythonu?
1378
3
Poskušam opraviti nekaj izzivov code golf, vendar vsi zahtevajo, da se vnos vzame iz stdin
. Kako to dobim v Pythonu?
Uporabite lahko modul
fileinput
:`
fileinput
bo v zanki pregledal vse vrstice v vhodu, ki so določene kot imena datotek, podana v argumentih ukazne vrstice, ali standardni vhod, če argumenti niso podani.Opomba:
linija
bo vsebovala zaključno novo vrstico; za njeno odstranitev uporabiteline.rstrip()
To lahko storite na več načinov.
sys.stdin
je datoteki podoben objekt, na katerem lahko pokličete funkcijiread
alireadlines
, če želite prebrati vse ali če želite prebrati vse in to samodejno razdeliti z novo vrstico. (Za delovanje te funkcije morateimportirati sys
.)Če želite uporabnika spodbuditi za vnos, lahko v Pythonu 2.X uporabite `
raw_input
, v Pythonu 3 pa samoinput
.Če dejansko želite le prebrati možnosti ukazne vrstice, lahko do njih dostopate prek seznama sys.argv.
Verjetno vam bo ta članek v Wikiknjigi o vhodu/izhodu v Pythonu prav tako koristna referenca.
Tukaj je iz Learning Python:
Na Unixu lahko to preizkusite tako, da naredite nekaj takega:
V operacijskem sistemu Windows ali DOS bi naredili: