Kako čitati sa stdin -a u Pythonu

How Read From Stdin Python

Unos od korisnika važan je dio svakog programskog jezika. Izlaz mnogih programa ovisi o standardnom ulazu. Način preuzimanja unosa od korisnika je različit za različite programske jezike. U Pythonu postoji mnogo načina čitanja sa standardnog unosa. The funkcija input () je najčešći način čitanja sa standardnog ulaza, koji je ugrađena funkcija. The sys.stdin Drugi način je čitanje poziva sa standardnog ulaza funkcija input () interno. Python ima još jedan modul po imenu ulaz datoteke za čitanje standardnog ulaza. The funkcija input () ovog modula može se koristiti za čitanje standardnog unosa ili čitanje sadržaja iz jedne ili više datoteka. U ovom vodiču objašnjeni su različiti načini čitanja sa standardnog unosa u Pythonu.

Primjer-1: Čitanje podataka iz stdina pomoću funkcije input ()

Funkcija input () je najčešće korištena funkcija za unos podataka od korisnika. Izradite python datoteku sa sljedećom skriptom kako biste preuzeli unos od korisnika dok se ne pritisne tipka 'n'. Ovdje se beskonačna petlja stvara pomoću while petlje. Prva funkcija input () koristi se za preuzimanje podataka od korisnika, a funkcija print () za ispis ulazne vrijednosti. Zatim se funkcija input () skripte koristi kako bi se od korisnika zatražilo da ponovno nastavi zadatak ili izađe iz skripte. Ako korisnik pritisne 'n' ili 'N', iteraciju petlje zaustavit će naredba break; u suprotnom, petlja će ponovno iterirati i uzeti drugi unos od korisnika. Gornja () funkcija koristi se u skripti za veliko korištenje vrijednosti koju je dao korisnik.



# Definirajte beskonačnu petlju

dok Pravi:

# Uzmite unos od korisnika

inputVal= ulazni('Upišite bilo koji tekst: n')

# Ispišite ulaznu vrijednost

ispisati('Ulazna vrijednost je %s'%(inputVal))

# Zatražite sljedeću iteraciju

nextInput= ulazni('Želite li nastaviti? (D/N) ')

# Prekinuti iz petlje ako se pritisne 'n'

akonextInput.Gornji() == 'N':

pauza

# Ispišite poruku o prekidu

ispisati('Program je prekinut.')

Izlaz:

Sljedeći sličan izlaz pojavit će se nakon izvršavanja gornje skripte. Evo, ‘ LinuxHint 'Je dao prvu ulaznu vrijednost i završio iz skripte za pritiskanje znaka,' n '.





Primjer 2: Čitanje podataka iz stdina pomoću sys.stdin

The sys.stdin je još jedna mogućnost Pythona da preuzme standardni ulaz od korisnika s terminala. Interno poziva funkciju input () i dodaje ' n ‘Nakon unosa. Izradite python datoteku sa sljedećom skriptom kako biste provjerili upotrebu sys.stdin za standardni unos. Ovdje se petlja ‘for-in’ koristi za uzimanje unosa od korisnika beskonačno mnogo puta dok korisnik ne želi prekinuti skriptu. Nakon ispisa ulazne vrijednosti, funkcija input () koristi se za traženje od korisnika da zaustavi skriptu ili ne. Skripta će se prekinuti ako korisnik pritisne ‘ i ' ili ' I ‘. The gornja () funkcija ovdje se koristi i za kapitalizaciju ulazne vrijednosti.

# Uvezi sys modul

uvoz sys


ispisati('Upišite bilo koji tekst:')


# Uzmite unos koristeći stdin

zainputValu sys.stdin:

# Ispišite ulaznu vrijednost

ispisati('Ulazna vrijednost je:%s'% inputVal)


# Zatražite sljedeću iteraciju

nextInput= ulazni('Želite li prekinuti? (D/N) ')

# Prekinite s petljom ako pritisnete 'y/Y'

akonextInput.traka().Gornji() == 'I':

pauza

drugo:

ispisati('Upišite bilo koji tekst:')

Izlaz:

Sljedeći sličan izlaz pojavit će se nakon izvršavanja gornje skripte. Evo, ‘ Python programiranje 'Je dao kao prvu ulaznu vrijednost i završio iz skripte za pritiskanje znaka,' y '.



Primjer 3: Čitanje podataka iz stdin-a pomoću datoteke fileinput

Fileinput je još jedan Pythonov modul za standardni unos. Redkovi teksta mogu se preuzeti s terminala ili datoteke pomoću fileinput.input () . Ako u ovoj funkciji nije navedena vrijednost argumenta, ona će uzeti ulaz iz terminala, a ako je naziv postojeće datoteke naveden kao vrijednost argumenta, primit će ulaz iz datoteke. Napravite python datoteku sa sljedećom skriptom za standardni unos s terminala. Ovdje se petlja ‘for-in’ koristi kao prethodni primjer za unos beskonačnih vremena sve dok korisnik ne želi prekinuti skriptu. Zatim se funkcija input () koristi da zatraži od korisnika da zaustavi skriptu ili ne. Skripta će se prekinuti ako korisnik upiše 'Quit' ili 'Quit' ili 'QUIT' . The gornja () funkcija ovdje se koristi i za kapitalizaciju ulazne vrijednosti. The strip () funkcija koristi se za uklanjanje dodatnih razmaka s obje strane ulazne vrijednosti.

# Uvoz modula za unos datoteka

uvoz ulaz datoteke


ispisati('Unesite tekst:')

'' '

Unesite unos pomoću funkcije fileinput.input () i

pritisnite ctrl+D da biste dovršili uzimanje ulazne vrijednosti

'' '


zainputValu ulaz datoteke.ulazni():

# Prekinite s petlje ako je upisano 'quit'

akoinputVal.traka().Gornji() == 'PRESTATI':

pauza


# Ispišite ulaznu vrijednost

ispisati('Ulazna vrijednost je:',inputVal)

ispisati('Unesite tekst:')

Izlaz:

Sljedeći sličan izlaz pojavit će se nakon izvršavanja gornje skripte. Ovdje je 'Nauči python s LinuxHint.com' dao prvu ulaznu vrijednost i završio iz skripte za upisivanje riječi 'quit'. Morate se sjetiti jedne stvari dok uzimate ulaz s terminala pomoću ulaz datoteke modul. Odnosno, morate pritisnuti ctrl+d nakon unosa.

Morate navesti naziv datoteke kao vrijednost argumenta fileinput.input () funkciju ako želite uzeti podatke iz datoteke umjesto s terminala.

Zaključak:

Tri različita načina za unos podataka s terminala prikazana su u ovom vodiču pomoću tri jednostavna primjera. Za korištenje. Nije potreban nikakav modul funkcija input () za uzimanje unosa. Za upotrebu je potrebno uvesti sys modul sys.stdin , i modul za unos datoteka je potrebno za uvoz radi korištenja fileinput.input () u skripti za standardni unos. Nadam se da će korisnici Pythona nakon čitanja ovog vodiča uzeti standardni unos na temelju svojih zahtjeva.