Leer hoe u gegevens rechtstreeks vanuit uw JES-app kunt laden en opslaan met deze stapsgewijze handleiding.
JES is een programmeeromgeving die u kunt gebruiken om code lokaal op uw computer te schrijven, testen en uitvoeren. JES biedt veel mogelijkheden, zoals de mogelijkheid om foto's, video's of andere media te bewerken.
U kunt ook andere taken in JES uitvoeren, zoals het lezen van of schrijven naar bestanden. U kunt gegevens uit verschillende bestandstypen lezen, waaronder tekstbestanden en CSV-bestanden.
Hoe te lezen uit een bestand met behulp van JES
U kunt de volledige broncode voor deze voorbeelden bekijken en downloaden van de GitHub-opslagplaats.
Om een bestand in JES te lezen, opent u het eerst, leest u de inhoud en slaat u het op in een variabele voor verdere verwerking.
Als u uit een tekstbestand leest, kunt u elke regel van het bestand afzonderlijk opslaan als een element in een array. Als u uit een CSV-bestand leest, kunt u ook de waarde van elke cel afzonderlijk opslaan.
- Open de JES-software op uw computer. Maak in het programmeervenster een nieuwe functie aan:
defreadFromFile():
- Gebruik de functie pickAFile() om de gebruiker te vragen een bestand te selecteren. Je kunt gemakkelijk vind hulp voor ingebouwde JES-functies om meer over hen te weten te komen.
bestand = pickAFile()
- Valideer het bestand om er zeker van te zijn dat de gebruiker alleen een TXT- of CSV-bestand heeft geselecteerd:
alsniet bestand.eindigt(".tekst") Enniet bestand.eindigt(".csv"):
afdrukken("Fout: alleen .txt- en .csv-bestanden worden ondersteund.")
opbrengst - Open het geselecteerde bestand met de open() functie. De eerste parameter is het bestand waaruit u leest. De tweede parameter specificeert de modus die wordt gebruikt om het bestand te openen. "rt" betekent bijvoorbeeld "lees bestand".
geopendBestand = open (bestand, "rt")
- Terwijl het bestand is geopend, leest u alle inhoud ervan. Sla de inhoud van het bestand op in een variabele:
allContent = geopendBestand.lezen()
- Sluit het bestand:
geopendFile.close()
- De variabele "allContent" bevat een enkele string die alle inhoud in het bestand bevat. Een teken voor een nieuwe regel (\N) scheidt elke regel in het bestand. Als u elke regel afzonderlijk wilt openen, splitst u de tekenreeks en slaat u elke regel op als een element in een array:
als bestand.eindigt(".tekst"):
rijen = allContent.split("\N")
afdrukken (rijen) - Als u uit een CSV-bestand leest, kunt u elke regel verder scheiden om de waarde uit elke afzonderlijke cel te halen. Scheid de waarden voor elke rij in het CSV-bestand met een komma en sla de waarden op in een dubbele matrix. De structuur van de array ziet er ongeveer zo uit: [[1,2,3], [4,5,6], [7,8,9]].
als bestand.eindigt(".csv"):
rijen = allContent.split("\N")
csvData = []voor rij in rijen:
als (rij != ''):
cellen = rij.split(",")
csvData.append([zwevend (cel) voor cel in cellen])afdrukken (csvData)
- Om het programma te testen, maakt u een nieuw tekstbestand met de naam voorbeeld.txt, en vul het met wat tekst:
Dit is het begin van het bestand
Dit is een andere lijn
Dit is de derde regel
Dit is het einde van het bestand - Ook maak een CSV-bestand aan, Noem maar op getallen.csv, en vul het met enkele gegevens:
- Klik in de JES-interface op de Programma laden knop, gelegen tussen het programmeervenster en de opdrachtregel:
- Voer de functie readFromFile() uit op de opdrachtregel:
leesUitBestand()
- Navigeer met behulp van de bestandsprompt naar waar u uw sample.txt-bestand hebt opgeslagen. Selecteer het bestand om het te openen en bekijk de inhoud die naar de console is afgedrukt:
- Voer de functie readFromFile() opnieuw uit in de opdrachtprompt. Selecteer het bestand numbers.csv om de inhoud te bekijken die naar de console is afgedrukt, met elke cel gescheiden en opgeslagen in de array:
Hoe naar een bestand te schrijven met JES
U kunt naar een CSV- of tekstbestand schrijven met de functie write(). U kunt het bestand openen om toe te voegen of te schrijven. Toevoegen voegt iets toe aan de bestaande inhoud, terwijl schrijven alle bestaande inhoud in het bestand overschrijft.
Maak een nieuwe functie en gebruik deze om naar een tekstbestand en een CSV-bestand te schrijven.
- Maak een nieuwe functie genaamd writeToFile():
defschrijfToFile():
- Gebruik de functie pickAFile() om de gebruiker te vragen een bestand te selecteren:
bestand = pickAFile()
- Open het bestand om toe te voegen:
geopendBestand = open (bestand, "bij")
- Als u de volledige inhoud van het bestand wilt overschrijven, voert u in plaats daarvan "w" in als het tweede argument:
geopendBestand = open (bestand, "w")
- Schrijf naar het bestand. Om meerdere regels toe te voegen, gebruikt u de "\n" om de inhoud in regels te scheiden, of gebruikt u opnieuw de functie write():
als bestand.eindigt(".tekst"):
geopendBestand.schrijven("\nTesten")
geopendBestand.schrijven("\nTesten1\nTesten2")
geopendBestand.schrijven("\nTesten3") - Om naar een CSV-bestand te schrijven, schrijft u alle gegevens voor een enkele rij met de functie write() en scheidt u de waarden voor elke cel met een komma:
als bestand.eindigt(".csv"):
geopendBestand.schrijven("\n12,34,56") - Sluit het bestand nadat u ernaar hebt geschreven:
geopendFile.close()
afdrukken("Succesvol naar bestand geschreven") - Klik op de Programma laden knop, gelegen tussen het programmeervenster en de opdrachtregel.
- Voer de functie writeToFile() uit in de opdrachtprompt:
schrijvenNaarBestand()
- Selecteer het bestand "sample.txt" met behulp van de bestandsprompt. Zodra JES klaar is met schrijven naar het bestand, opent u "sample.txt" om de nieuwe regels te bekijken die aan het einde van het bestand zijn toegevoegd:
- Voer de functie writeToFile() opnieuw uit op de opdrachtregel. Open het bestand "numbers.csv" om de nieuwe celwaarden te bekijken die aan het einde van het bestand zijn toegevoegd.
Bestandsgegevens lezen en schrijven met JES
Het schrijven van gegevens naar een bestand is een uiterst nuttige functie die u kunt gebruiken als u gegevens in een programma moet opslaan.
Ontdek andere manieren waarop u bestanden kunt lezen of schrijven met Python. Voorbeelden hiervan zijn het gebruik van modules zoals Pandas of Openpyxl.