Python con parola chiave

Python con parola chiave

“In Python, la parola chiave viene utilizzata per rendere il codice più chiaro e comprensibile. Semplifica le risorse comuni, come i flussi di file più facili da gestire. La parola chiave "con" in Python sostituisce una semplice scorciatoia per un blocco di cattura. Garantisce inoltre che le risorse siano chiuse immediatamente dopo essere state elaborate. Un caso popolare di utilizzo della parola chiave "con" è leggere/scrivere in un file. Un gestore del contesto è un metodo o una classe che assiste gli utenti con parole chiave. Un gestore del contesto ti consente di aprire e chiudere le risorse secondo necessità. Considera dove l'uso della parola chiave pulisce il codice nei seguenti esempi."

Esempio 1: gestione dei file senza la parola chiave "con"

In primo luogo, abbiamo mostrato i due esempi di gestione dei file senza il
"Con" parola chiave. Qui, possiamo semplicemente aprire il file my_file in modalità di scrittura “w."Con il metodo di scrittura; Abbiamo inserito il testo all'interno del file. Il file viene chiuso invocando il metodo chiuso.

Puoi scoprire che il testo è incorporato all'interno del My_file.

C'è un secondo esempio di gestione del file con il blocco try-catch.

Lo script sopra ha il seguente output.

Esempio 2: gestione dei file con la parola chiave "con"

Ora, nell'esempio seguente, utilizzare la parola chiave "con" per la gestione dei file.

Non è necessario chiamare file a parte le prime due implementazioni. Quando si utilizza la parola chiave "con", si chiama Close (). La dichiarazione "con" assicura che le risorse siano ottenute e rilasciate correttamente. Durante il file, c'è un'eccezione. La funzione Write () nel primo approccio può vietare al file di chiudere correttamente, risultando in vari errori nel codice, poiché molte modifiche ai file non funzionano correttamente fino a quando il file non è chiuso correttamente. Ecco come la parola chiave ci consente di scrivere nel file. Il testo del file viene mostrato all'interno di my_file.

La seconda soluzione nell'esempio precedente gestisce tutte le eccezioni, ma l'utilizzo della parola chiave "con" rende il codice molto più conciso e chiaro. Di conseguenza, l'Aiuta con dichiarazione nell'evitamento di problemi e fuga confermando che un oggetto è correttamente rinunciato quando il codice che lo utilizza viene eseguito completamente. La parola chiave è comunemente utilizzata insieme ai flussi di file, come dimostrato sopra, nonché a blocchi, prese, sottoprocessi, telnet e altri tipi di connessioni.

Esempio 3: gestione dei file definiti dall'utente con la parola chiave "con"

Non c'è nulla di insolito in Open () che lo rende adatto per l'uso con la parola chiave "con" poiché la stessa funzionalità può essere trovata negli oggetti definiti dall'utente. Utilizzando una parola chiave "con" nei tuoi oggetti, non lascerai mai una risorsa aperta. Le procedure __enter __ () e __exit __ () nelle operazioni degli oggetti sono tutto ciò che è necessario per utilizzare la parola chiave "con" negli oggetti definiti dall'utente. Dai un'occhiata al codice sottostante per ulteriori informazioni.

Diamo un'occhiata al codice sopra menzionato. L'oggetto funzione () di Messagewriter è immediatamente dopo la parola chiave "con", come puoi vedere. Python crea un oggetto Messagewriter e quindi esegue il metodo __enter __ () non appena il programma raggiunge l'area della parola chiave "con". In questo metodo __enter __ (), specificare la risorsa da utilizzare nell'oggetto. Il descrittore della risorsa ottenuta dovrebbe essere sempre restituito con questo metodo __enter __ ().

Il testo è archiviato nel My_File3.txt qui dalla parola chiave Python "con".

Esempio 4: Utilizzo del pacchetto contesto per la gestione dei file con la parola chiave "con"

Il sistema operativo fornisce queste maniglie per l'accesso alle risorse necessarie. Qui, il descrittore della risorsa del flusso di file è archiviato nel blocco di codice successivo.

La tecnica __enter __ () genera e restituisce un descrittore di file nell'esempio di Messagewriter menzionato sopra. Il metodo Enter () viene restituito da un descrittore di file che viene definito un file in questo esempio. All'interno dell'istruzione "con" c'è la sezione del codice che utilizza la risorsa acquisita. La procedura __exit __ () è considerata quando è stato eseguito il programma all'interno del corpo "con". Nel metodo __exit __ (), tutte le risorse raccolte sono rinunciate. Con gli oggetti definiti dall'utente, utilizziamo la parola chiave "con" in questo modo.

Context Manager:

Contesto manager si riferisce all'interfaccia delle operazioni __enter __ () e __exit __ () che consentono la parola chiave "con" negli oggetti definiti dall'utente.

Il contesto basato su classe sopra menzionato non è l'unico approccio per abilitare la parola chiave "con" negli oggetti definiti dall'utente. Il modulo di contesto estende l'interfaccia fondamentale di contesto di contesto con alcune astrazioni extra. Utilizzando il modulo contesticib, l'oggetto messagewriter può essere aggiornato dal contesto manager.

La funzione Open File () è un metodo del generatore in questo campione di codice a causa della dichiarazione generale del rendimento nella sua definizione.

Quando viene utilizzata la funzione Open File (), viene creato un descrittore di proprietà denominato file. Il chiamante viene quindi assegnato questo descrittore di risorse, che è rappresentato sopra dalla variabile il mio file. Il controllo del programma ritorna al metodo Open File () dopo l'esecuzione del programma all'interno della sezione. Il metodo Open File () riprende la sua esecuzione dopo l'istruzione di rendimento ed esegue il codice che lo segue. Questa sezione di codice si verifica subito dopo la dichiarazione di rendimento e rilascia le risorse acquisite. @ContextManager è un decoratore in questo caso.

Internamente, la vecchia versione basata su classe di contestment manager e l'implementazione basata sui nuovi generatori sono identiche. Mentre quest'ultimo sembra essere più leggibile, richiede una comprensione di generatori, decoratori e resa.

Con l'aiuto del contesto, abbiamo memorizzato con successo il record nel MY_FILE4.txt con la parola chiave "con" come segue:

Conclusione

A partire da ora, abbiamo visto come la dichiarazione "con" gestisce le eccezioni in modo intelligente. La parola chiave "con" aiuta anche a chiudere efficacemente il contesto di contesto, che potrebbe essere stato lasciato aperto durante la programmazione. La parola chiave è un sostituto per le dichiarazioni TRY/Finalmente la gestione degli errori che vengono spesso utilizzate. Abbiamo mostrato alcune istanze di utilizzo della parola chiave "con" per la gestione dei file.