Parliamo di file I oh, cosa voglio dire, lo vedrai molto nella programmazione.
IO sta per input output.
Vedete, la maggior parte delle volte le macchine non comunicano in un solo ambiente, ad esempio, finora abbiamo
scritto il nostro codice in, diciamo, un editor come testo sublime che ho qui o PAE Charm
o un Reppel online.
Ma di solito vuoi interagire con diverse parti del sistema.
Forse vuoi parlare con un altro sito web.
Forse vuoi parlare con qualcosa che è sul tuo desktop, forse un file, forse due macchine diverse stanno
comunicando tra loro.
Forse stai parlando con un database.
Voglio dire semplicemente, ehi, voglio che tu inserisca qualcosa dal mondo esterno e produca qualcosa nel mondo
esterno.
E uno dei modi più comuni in cui usiamo cose come IO è attraverso la lettura di file, potresti pensare a
Python e come non sarebbe bello se potessimo forse scrivere uno script che comprime le immagini mentre abbiamo bisogno
di IO, quindi ho bisogno di inserire un'immagine e quindi ho bisogno di aggiornare il file compresso.
Immagine.
Forse voglio lavorare con un file PDF e magari aggiungere una filigrana a tutte le mie pagine PDF.
Bene, allora inseriamo un PDF e produciamo una nuova versione di un PDF.
Quindi questo è un compito molto comune che vediamo molto.
E leggere e scrivere file è uno strumento molto importante nella nostra cintura degli attrezzi.
E a proposito, abbiamo un progetto in arrivo in cui lo utilizzeremo effettivamente con PDF.
Ma per ora, come possiamo eseguire l'output di questo file di input con Python?
Bene, Python ha una funzione incorporata che ci permette di aprire e scrivere su file.
E si chiama semplicemente open, bello e facile, quindi usando open possiamo fare qualcosa del genere, posso creare un
file di testo di esempio nel nostro desktop, quindi userò il mio terminale qui.
Quindi, se guardiamo alla directory di lavoro attuale, sono su un desktop, se sei su Windows,
potresti dover eseguire alcuni comandi diversi qui.
Ma ormai dovresti essere abbastanza familiare sul fatto che puoi creare un file se lo desideri.
Ora posso farlo manualmente o nel mio terminale.
posso davvero fare.
Se sei su un Mac, puoi semplicemente toccare e poi dirò test punto testo.
Quindi, se faccio altro qui, vedi che ho un file di testo di prova e uno script prima.
E ancora, solo per ricontrollare, se vado sul mio desktop.
Sì, ho questi due proprio qui, perfetti ora qui, possiamo semplicemente dire nel nostro file di script.
Aprire.
E il nome del file nel nostro caso, è test heartstring test, testo punto proprio così.
Ora posso assegnarlo a una variabile, chiamandolo il mio file.
E ora abbiamo, beh, l'oggetto file, quindi controlliamo questo se lo faccio qui, stampo il mio file.
Vediamo cosa succede.
Ho intenzione di eseguire il mio codice.
Quindi diciamo Python tre e poi eseguiamo lo script.
Va bene.
Prendo un oggetto, un involucro di tessuto, ottengo il nome, che è il testo che vengo falciato, che non sono ancora sicuro di cosa sia,
impareremo e poi le codifiche, che è il modo in cui è codificato questo file, che è UTF otto.
La maggior parte dei file è solitamente codificata in UTF otto.
Va bene, quindi come posso leggere questo file?
Tutto quello che dobbiamo fare è che il mio file ha un punto.
Leggi il metodo su di esso in modo che se lo eseguo ora.
Bene, ottengo uno spazio vuoto perché non c'è niente su questo testo di prova, quindi scriviamo qualcosa.
Apro questo file e il testo sublime e scrivo semplicemente, Ciao, mi chiamo Andre Agassi.
Sono diventato davvero molto creativo con questo.
Buon lavoro.
Va bene, torniamo indietro.
Quindi ora se leggo questo file.
Guarda, sono in grado di leggere ciao, mi chiamo Andre, e ora ci sei.
Ho letto il mio file.
Bello e facile.
Ora, se lo eseguo di nuovo, facciamolo.
Leggi questo più volte.
Se clicco, corro.
Riesco a leggere la prima volta, ma queste due volte non leggo nulla.
Perché?
Bene, questa funzione aperta ha questa idea di un cursore.
Cioè, puoi leggere il file solo una volta.
E una volta aperto, restituisce un oggetto file.
E il contenuto del file che puoi leggere e il contenuto del file vengono letti con un cursore proprio
come vedi qui uno per uno e stampati sullo schermo.
Ma alla fine di questa prima lettura, il cursore sarà alla fine del file.
Quindi ora, quando prova a leggere, sarà la fine del file e non rimarrà nulla lì.
Quindi il modo per aggirare questo problema è fare qualcosa del genere.
Diciamo semplicemente che il mio file dot seke, che sposta il nostro cursore sull'indice che vogliamo nel nostro caso, cerca zero.
Quindi, se lo eseguo ora, ecco qua.
E se sposto il cursore indietro.
E io salvo ed eseguo questo.
Va bene, ora va molto meglio.
E questo è solo per dimostrare che Python usa questa idea di un cursore per leggere un file.
Ora, un'altra cosa unica che posso fare è leggere la riga.
Quindi se eseguo questo.
Legge la riga, ma supponiamo che il nostro file di testo abbia righe diverse, quindi come stai?
Diciamo una faccina sorridente qui, se ora leggo la riga.
Ricevo ciao, mi chiamo Andre, se rileggo la riga, ciao, mi chiamo Andre perché ricevo ogni riga.
Ricevo solo la prima riga se la stampo più volte.
E io gestisco questo.
Va bene, è meglio che riceva.
Ciao, mi chiamo Andre Faccina sorridente.
Come stai?
Di nuovo, il cursore continua a muoversi, giusto, così posso continuare a leggere le righe.
Un'altra cosa che posso fare è dire semplicemente leggere righe se eseguo questo.
Ricevo una lista che contiene l'intero file, legge tutte le righe, e vedete qui che ho ciao, mi
chiamo Andre Nagui.
Ho una nuova linea qui, una faccina sorridente, una nuova linea.
Ricorda, questa è sequenza di fuga.
E poi come stai?
E nessuna nuova riga qui perché non c'è nessuna nuova riga.
È la fine del file.
Quindi questi sono estremamente utili, forse possiamo usare espressioni regolari per cercare una parte di testo in un file che è
piuttosto utile, giusto?
Ora, l'ultima cosa che dobbiamo fare, e questo è un po' fastidioso, quindi ti mostrerò come non sarà
necessario farlo in futuro.
Ma in realtà devi chiudere manualmente il file dopo averlo aperto con open.
Quindi puoi usarlo da qualche altra parte e il programma è solo un buon standard, quindi quello che devi fare è
dire che il mio file si chiude dopo che hai finito.
Dillo al tuo computer, ehi.
Devi interrompere qualsiasi cosa tu stia facendo, non mi interessa più l'autunno, abbiamo finito.
Puoi usarlo da qualche altra parte.
Quindi di solito facciamo qualcosa del genere e abbiamo finito.
Facciamo una pausa e impariamo qualcosa di più nel prossimo video.