Modulo Python Io

Modulo Python Io
Siamo in grado di gestire i processi di input e output relativi al file con l'aiuto del modulo Python IO. La libreria standard Python viene fornita con questo modulo. L'utilizzo del modulo IO ha il vantaggio di permetterci di migliorare la capacità di consentire la scrittura ai dati Unicode a causa delle classi e dei metodi accessibili.

In Python, possiamo utilizzare il modulo IO per realizzare le operazioni di flusso e tampone in vari modi. In questo articolo, spiegheremo le due utili classi comuni del modulo IO che sono "Bytesio" e "Stringio". È possibile accedere a questi "io.Bytesio "e" io.Stringio ".

Esempio 1: utilizzando la classe Python Bytesio

Quando siamo tenuti a mantenere i dati sotto forma di byte nel buffer in memoria, il modulo Python IO ci fornisce una classe "bytesio" che ci consente di utilizzare "IO.Metodo bytesio () "per gestire i dati come byte.

Abbiamo creato il seguente programma di esempio per dimostrare la manipolazione del byte nel buffer:

Il "io.Il metodo bytesio () "appartiene al modulo di Python" IO ". Per praticare questo metodo nel nostro programma, dobbiamo introdurre la libreria che la contiene. Questo modulo ci consente di utilizzare le principali operazioni di input/output in Python. Il codice avvia importando la libreria Python richiesta che è "IO" scrivendo la riga di codice come "import io".

Dopo aver importato il modulo, invochiamo "io.Metodo bytesio () "dalla libreria" IO ". Nelle parentesi di questo metodo, utilizziamo il prefisso "B" che si riferisce al passaggio dei byte. Questo prefisso "B" significa che tutto ciò che è scritto in avanti è memorizzato come un flusso di byte nel buffer. Quindi, forniamo una stringa di byte come “Questo è un flusso di byte. \ ndo capisci?"Un oggetto file" bstream "viene creato per gestire questo flusso di byte e assegnare il flusso di byte che viene generato da" IO.Metodo bytesio () ". Ora, per stampare il contenuto contenuto nel buffer nella finestra di output, abbiamo un metodo dal toolkit "IO" come "FileObject.getValue () ". Il metodo "Print ()" è chiamato. Questo metodo visualizza l'ingresso fornito.

Come input di questo metodo, il "getValue ()" viene passato con l'oggetto file come "bstream.getValue () ". Questo metodo ottiene il contenuto mantenuto nel buffer e la funzione "print ()" alla fine mette il flusso di byte risultanti sul display. Infine, per chiudere il buffer, il "file object.Viene utilizzato il metodo Close () ". Viene menzionato il nome dell'oggetto file "Bstream" con il metodo "Close ()". Ciò chiude il buffer per eventuali operazioni successive e libera la memoria catturata per il buffer.

Il risultato generato ci mostra un flusso di byte esposto sul terminale che viene recuperato dal buffer.

Esempio 2: Utilizzo della classe Python Stringio

L'altro modulo Python Io principale è "Stringio". Questo è simile al "bytesio" con l'eccezione che esegue le operazioni di input/output sui dati della stringa anziché sui dati byte. A volte, è necessario leggere o generare i dati nella memoria anziché nei file effettivi a cui il sistema operativo può accedere. La classe Python Stringio è utile in questo caso.

Possiamo esercitare le diverse operazioni relative al file su questo modulo. La prima pratica è creare un oggetto file ed eseguire le operazioni del file su di esso. L'oggetto file viene creato implementando lo snippet di codice fornito nel seguente:

Per prima cosa comprendiamo questo blocco di codice.

Qui, importiamo il modulo "IO" nel programma in modo da poter accedere a tutti i metodi che contiene. Nella riga successiva del programma, dichiariamo una variabile stringa "Newstring" che è inizializzata dalla stringa, "Stiamo imparando a utilizzare il modulo Stringio in Python."Ora, creiamo un oggetto" Stringio "passandolo dalla stringa precedentemente creata. Poiché questo modulo appartiene al toolkit "io", dobbiamo menzionarlo davanti all'oggetto Stringio come "IO.Stringio () ".All'interno delle sue parentesi, la stringa che abbiamo creato viene superata. Se non passiamo una stringa a questo "Stringio", inizierà a vuoto. Un oggetto file "file_obj" viene creato per contenere i dati della stringa di risultato dal "Stringio" e può essere trattato solo come un file. Le operazioni relative al file possono essere applicate ora a questo oggetto file.

La prima operazione di file che faremo qui è leggere il contenuto inizialmente presente nel file oggetto generato. La sezione precedente del codice è scritta per raggiungere questo obiettivo.

Per interpretare i dati che il file sta trasportando, dobbiamo leggerlo. Il "filebject.il metodo read () ”ci consente di leggere il contenuto del file. Poiché possiamo trattare l'oggetto Stringio allo stesso modo di un file, possiamo applicare il metodo "Read ()" del file su di esso. Pertanto, invochiamo il "file object.Read () "Metodo. Il nome dell'oggetto file è "file_obj" che specifichiamo con il metodo "read ()". I dati recuperati devono essere mantenuti in variabile "x". Infine, per vedere il contenuto di lettura del file sul terminale, la variabile "x" viene passata alla funzione "print ()". Il metodo "Print ()" mette l'output in vista che è memorizzato nella variabile di input fornita.

Il contenuto del file è mostrato sullo schermo come visualizzato nell'istantanea precedente che inizialmente abbiamo inserito durante la creazione del file oggetto.

Allo stesso modo, possiamo scrivere una nuova stringa su questo oggetto file. Per scrivere sul file, dobbiamo utilizzare il metodo "write ()" e scrivere la stringa desiderata con il contenuto del file esistente. Il seguente codice aiuta a comprenderne l'esecuzione:

In questo blocco di codice, il Python “FileObject.il metodo write () ”viene utilizzato per scrivere una stringa sul file. Il nome dell'oggetto file "file_obj" è fornito con il metodo "write ()" e la stringa desiderata viene inserita all'interno delle sue parentesi. La stringa che aggiungiamo è “Questo è nuovi dati di stringa."Il contenuto aggiornato del file può essere visualizzato solo quando leggiamo il file. Ma prima di leggere tutto il contenuto dell'oggetto file, il cursore deve essere spostato su 0th posizione indice in modo che possa leggere i dati precedenti anche con la nuova stringa scritta.

Per cambiare la posizione del cursore, il metodo "Seek ()" viene invocato con "0" come valore dell'argomento. Questo "0" indica che il cursore inizia a leggere dal punto iniziale. Ora esaminiamo il contenuto del file utilizzando il metodo Python File, "Read ()". Il nome dell'oggetto file come "file_obj" è fornito con il metodo "read ()" al contenuto aggiornato che viene archiviato in questo oggetto file. Per tenere i dati recuperati, viene generata una variabile "y". Alla fine, per mettere questo contenuto sul terminale, la funzione "Print ()" entra in pratica qui. Questo metodo ha due input da elaborare: un'istruzione come "il nuovo contenuto è:" e quindi la variabile "y" per leggere il contenuto nella finestra di output.

L'esecuzione del programma ha prodotto i dati risultanti sullo schermo. Qui, possiamo vedere che la nuova stringa che abbiamo scritto è aggiunta al contenuto esistente.

Conclusione

Il modulo Python IO ci fornisce la possibilità di eseguire le operazioni di input/output sui dati forniti. Questo articolo ha discusso delle due classi principali del modulo IO - Bytesio e Stringio. Per entrambi i moduli, le classi sono elaborate con pratici codici Python che sono implementati nello strumento Spyder. La prima dimostrazione ha eseguito la classe "bytesio", quindi la seconda illustrazione ha funzionato sui diversi metodi che possono essere eseguiti usando la classe "Stringio".