Scopri come caricare e salvare i dati direttamente dalla tua app JES con questa guida dettagliata.
JES è un ambiente di programmazione che puoi utilizzare per scrivere, testare ed eseguire codice in locale sul tuo computer. JES offre molte funzionalità come la possibilità di modificare foto, video o altri media.
Puoi anche completare altre attività in JES come leggere o scrivere su file. Puoi leggere i dati da diversi tipi di file, inclusi file di testo e file CSV.
Come leggere da un file utilizzando JES
È possibile visualizzare e scaricare il codice sorgente completo per questi esempi dal file Deposito GitHub.
Per leggere un file in JES, prima aprilo, quindi leggine il contenuto e salvalo in una variabile per un'ulteriore elaborazione.
Se stai leggendo da un file di testo, puoi memorizzare ogni riga del file separatamente come elemento in un array. Se stai leggendo da un file CSV, puoi anche memorizzare il valore di ciascuna cella separatamente.
- Apri il software JES sul tuo computer. Nella finestra di programmazione, crea una nuova funzione:
defreadDaFile():
- Utilizzare la funzione pickAFile() per chiedere all'utente di selezionare un file. Puoi facilmente trova aiuto per le funzioni JES integrate per saperne di più su di loro.
file = pickAFile()
- Convalida il file per assicurarti che l'utente abbia selezionato solo un file TXT o CSV:
Senon file.endswith(".TXT") Enon file.endswith(".csv"):
stampa("Errore: sono supportati solo i file .txt e .csv.")
ritorno - Apri il file selezionato usando la funzione open(). Il primo parametro è il file da cui stai leggendo. Il secondo parametro specifica la modalità utilizzata per aprire il file. Ad esempio, "rt" significa "leggere file".
openFile = apri (file, "rt")
- Mentre il file è aperto, leggi tutto il contenuto da esso. Memorizza il contenuto del file in una variabile:
allContent = openFile.read()
- Chiudi il file:
apertoFile.close()
- La variabile "allContent" contiene una singola stringa che contiene tutto il contenuto all'interno del file. Un carattere di nuova riga (\N) separa ogni riga nel file. Se desideri accedere a ciascuna riga singolarmente, dividi la stringa e memorizza ciascuna riga come elemento in un array:
Se file.endswith(".TXT"):
righe = allContent.split("\N")
stampa (righe) - Se stai leggendo da un file CSV, puoi separare ulteriormente ogni riga per ottenere il valore da ogni singola cella. Per ogni riga nel file CSV, separa i valori utilizzando una virgola e memorizza i valori in un doppio array. La struttura dell'array sarà simile a questa: [[1,2,3], [4,5,6], [7,8,9]].
Se file.endswith(".csv"):
righe = allContent.split("\N")
csvDati = []per riga In righe:
Se (riga!= ''):
celle = riga.split(",")
csvData.append([float (cella) per cellula In cellule])stampa (csvDati)
- Per testare il programma, crea un nuovo file di testo chiamato esempio.txt, e popolalo con del testo:
Questo è l'inizio del file
Questa è un'altra linea
Questa è la terza riga
Questa è la fine del file - Anche creare un file CSV, nominalo numeri.csve popolarlo con alcuni dati:
- Nell'interfaccia JES, fare clic su Carica programma pulsante, situato tra la finestra di programmazione e la riga di comando:
- Esegui la funzione readFromFile() nella riga di comando:
leggiDaFile()
- Utilizzando il prompt del file, vai a dove hai archiviato il tuo file sample.txt. Selezionare il file per aprirlo e visualizzare il contenuto stampato sulla console:
- Eseguire nuovamente la funzione readFromFile() nel prompt dei comandi. Selezionare il file numbers.csv per visualizzare i contenuti stampati sulla console, con ogni cella separata e memorizzata nell'array:
Come scrivere su un file usando JES
Puoi scrivere su un file CSV o di testo usando la funzione write(). È possibile aprire il file per aggiungere o scrivere. L'aggiunta aggiungerà al contenuto esistente, mentre la scrittura sovrascriverà qualsiasi contenuto esistente nel file.
Crea una nuova funzione e usala per scrivere in un file di testo e in un file CSV.
- Crea una nuova funzione chiamata writeToFile():
defscrivere su file():
- Utilizzare la funzione pickAFile() per richiedere all'utente di selezionare un file:
file = pickAFile()
- Apri il file per aggiungere:
openFile = apri (file, "A")
- In alternativa, se vuoi sovrascrivere tutto il contenuto del file, inserisci invece "w" come secondo argomento:
openFile = apri (file, "w")
- Scrivi nel file. Per aggiungere più righe, utilizzare "\n" per separare il contenuto in righe o utilizzare nuovamente la funzione write():
Se file.endswith(".TXT"):
apertoFile.write("\nProva")
apertoFile.write("\nTest1\nTest2")
apertoFile.write("\nTest3") - Per scrivere in un file CSV, scrivi tutti i dati per una singola riga utilizzando la funzione write() e separa i valori per ogni cella utilizzando una virgola:
Se file.endswith(".csv"):
apertoFile.write("\n12,34,56") - Chiudi il file dopo averlo scritto:
apertoFile.close()
stampa("Scrittura nel file riuscita") - Clicca sul Carica programma pulsante, situato tra la finestra di programmazione e la riga di comando.
- Esegui la funzione writeToFile() nel prompt dei comandi:
scrivi su file()
- Utilizzando il prompt del file, seleziona il file "sample.txt". Una volta che JES ha finito di scrivere sul file, apri "sample.txt" per visualizzare le nuove righe aggiunte alla fine del file:
- Eseguire nuovamente la funzione writeToFile() nella riga di comando. Apri il file "numbers.csv" per visualizzare i nuovi valori di cella aggiunti alla fine del file.
Lettura e scrittura di dati di file con JES
La scrittura dei dati su un file è una funzione estremamente utile che puoi utilizzare se devi salvare dei dati all'interno di un programma.
Esplora altri modi in cui puoi leggere o scrivere su file usando Python. Esempi di ciò includono l'utilizzo di moduli come Pandas o Openpyxl.