Apri un file in Python usando l'istruzione con

Apri un file in Python usando l'istruzione con
Quando richiede la memorizzazione di alcuni dati permanentemente per lo scopo di programmazione, viene utilizzato un file per eseguire questa attività. Generalmente, il aprire() La funzione viene utilizzata in Python per aprire un file per la lettura e la scrittura. IL aprire() Il metodo restituisce un oggetto per funzionare con il file. Quando un file viene aperto da aprire() funzione, quindi richiede di chiudere il file. Usando il 'con'L'istruzione è il modo alternativo per aprire un file in Python. È meglio del aprire() funzione e aiuta a gestire la risorsa in modo più efficiente perché garantisce che la risorsa aperta sia chiusa chiudendo automaticamente il file dopo aver completato l'attività. L'errore di apertura del file può essere gestito anche senza il blocco TRY-ESCETTURE utilizzando il 'con' dichiarazione.

Sintassi:

La sintassi del 'con'Dichiarazione per aprire un file per la lettura e la scrittura ha mostrato di seguito.

con aperto (file, modalità) come file_handler

  • Il primo argomento è obbligatorio e contiene il nome file.
  • Il secondo argomento è facoltativo che viene utilizzato per definire la modalità per l'apertura del file per leggere o scrivere.

Esempio-1: leggi un file di testo usando l'istruzione "con"

Crea un file Python con il seguente script che aprirà un file di testo usando il 'con' dichiarazione. Qui, il temp.TXT Il file verrà aperto per la lettura e il readlines () La funzione verrà utilizzata per leggere il contenuto del file e archiviarlo in una variabile di elenco. Successivamente, il loop itederà i valori dell'elenco e stamperanno il contenuto del file. IL Chiuso L'attributo sarà VERO Dopo aver letto il contenuto del file.

#Open un file per la lettura usando "con"
con Open ('Sales.txt ') come fh:
#Read File riga per riga e archivia in un elenco
data = fh.readlines ()
#Iuta l'elenco e stampare ogni valore
per valore nei dati:
Stampa (valore, end = ")
#Check Il file è chiuso o no
Se FH.Chiuso :
stampa ("\ nthe File è chiuso.")

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito lo script sopra se il saldi.TXT Il file esiste nella posizione corrente. L'output mostra che il file viene chiuso automaticamente dopo aver completato la lettura del file.

Esempio-2: leggi un file binario utilizzando l'istruzione "con"

Crea un file Python con il seguente script che aprirà un file binario per la lettura e calcola la dimensione del file in byte. Il nome file verrà prelevato dall'utente.

Modulo OS #IMport
Import OS
#Take il nome file dall'utente
FileName = input ("Immettere un nome immagine:")
#Check Il fileName esiste o no
Se OS.sentiero.esiste (nome file):
#Open il nome file per la lettura
con aperto (nome file, 'RB') come IMG:
#Initializza il contatore
contatore = 0
#Redi il contenuto del file
mentre img.Leggi (vero):
# -Increment il contatore
contatore += 1
Stampa ("La dimensione del file di immagine è: %d byte." %contatore)
altro:
stampa ("Il file non esiste.")

Produzione:

Il seguente output simile verrà visualizzato dopo aver eseguito lo script sopra se il uccello.jpeg Il file esiste nella posizione corrente. L'output mostra che la dimensione del file è 9946 byte.

Esempio-3: Uso delle dichiarazioni nidificate "con"

Crea un file Python con il seguente script che aprirà un file per la lettura e aprirà un altro file per la scrittura utilizzando le dichiarazioni nidificate "con". Il primo 'con'L'istruzione viene utilizzata per aprire il giorni feriali.TXT file per la lettura che viene creata prima. Il secondo 'con'La dichiarazione viene utilizzata per aprire la vacanza.TXT file per scrivere il contenuto specifico da giorni feriali.TXT file.

#Open un file per la lettura
con aperto ('nei giorni feriali.txt ',' r ') come fh_in:
#Open un file per la scrittura
con Open ('Holiday.txt ',' w ') come fh_out:
# Leggi il file riga per riga e memorizza in un elenco
data = fh_in.readlines ()
Per Val nei dati:
#Cuck la condizione prima di scrivere
Se val.strip () == 'sabato' o val.strip () == 'domenica':
fh_out.Scrivi (val)
Stampa ("Le vacanze sono: \ n")
#Age il file appena creato per la lettura
con Open ('Holiday.txt ',' r ') come fh:
# Leggi il file riga per riga e memorizza in un elenco
data = fh.readlines ()
Per Val nei dati:
Stampa (Val)

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito lo script sopra.

Esempio-4: apri più file in una singola istruzione "con"

Crea un file Python con il seguente script che aprirà due file per la scrittura usando un singolo 'con' dichiarazione. Lo script aprirà il giorni feriali.TXT file per la lettura e alcuni contenuti specifici di questo file verranno scritti in out1.TXT file e out2.TXT file. Successivamente, verranno aperti entrambi i file appena scritti per la lettura e il contenuto di questi file verrà stampato.

#Open due file per la scrittura
con aperto ('out1.txt ',' w ') come fh1, aperto (' out2.txt ',' w ') come fh2:
# Apri un file per la lettura
con aperto ('nei giorni feriali.txt ',' r ') come fh_in:
# Leggi il file riga per riga e memorizza in un elenco
data = fh_in.readlines ()
Per Val nei dati:
#Cuck la condizione prima di scrivere
Se val.strip () == 'sabato' o val.strip () == 'domenica':
FH2.Scrivi (val)
altro:
FH1.Scrivi (val)
#Open due file appena scritti per la lettura
con aperto ('out1.txt ',' r ') come fh1, aperto (' out2.txt ',' r ') come fh2:
Stampa (FH1.readlines ())
Stampa (FH2.readlines ())

Produzione:

Verrà visualizzato il seguente output dopo aver eseguito lo script sopra.

Esempio-5: confronta "con" Funzione Open () e Open ()

Crea un file Python con il seguente script che aprirà lo stesso file denominato giorni feriali.TXT Usando il 'con"Dichiarazione e aprire() funzione. Nell'esempio precedente è stato mostrato che il file viene chiuso automaticamente dopo aver letto o scritto il contenuto, se viene aperto usando il 'con' dichiarazione. Ma il file richiede di chiudersi usando il vicino () funzione, se il file viene aperto utilizzando l'apertura() funzione che è stata mostrata usando il blocco try-finalmente in questo script.

# Dichiarare una funzione per verificare che il file sia chiuso o meno
DEF CHECK (f):
Se f.Chiuso:
stampa ("Il file è stato chiuso.")
altro:
stampa ("Il file non è ancora chiuso.")
# Apri un file per la lettura utilizzando l'istruzione "con"
con aperto ('nei giorni feriali.txt ') come fh:
data = fh.Leggere()
# Chiama la funzione check ()
Controlla (FH)
# Apri un file per la lettura utilizzando la funzione Open ()
fh = open ('giorni feriali.TXT')
Tentativo:
data = fh.Leggere()
# Chiama la funzione check ()
Controlla (FH)
Finalmente:
fh.vicino()
# Chiama la funzione check ()
Controlla (FH)

Produzione:


Verrà visualizzato il seguente output dopo aver eseguito lo script sopra.

Conclusione

Diversi usi del 'con"L'istruzione per aprire qualsiasi file per la lettura o la scrittura è stata mostrata in questo tutorial utilizzando semplici esempi che aiuteranno gli utenti di Python a conoscere gli scopi di usare il"con'Dichiarazione in Python.