Introductie
Een van de primaire functies van programmeertalen is om u te helpen met gegevens om te gaan. Dit omvat het schrijven, lezen, opslaan en overdragen van gegevens. Python is een van de meest populaire programmeertalen. Als u van plan bent Python te gebruiken, moet u een basisidee hebben van hoe u verschillende bestandstypen gebruikt. Het eenvoudigste bestandstype is het txt- of platte tekstbestandsformaat. Stel dat u een programma hebt dat gebruikers controleert op toegangsbeheer. De lijst zelf wordt opgeslagen als een tekstbestand. Dus hoewel u voor bepaalde bedrijven een ander programma kunt gebruiken, extraheert u de waarden uit een tekstdocument. Daarom is het belangrijk om het tekstbestandsformaat te begrijpen.
In deze handleiding beginnen we met een korte achtergrond over de basisbestandsformaten in Python. Daarna zullen we ontdekken hoe we tekstbestanden in het programma kunnen openen, lezen en schrijven.
Voordat we beginnen…
Voordat we met de handleiding beginnen, zijn er enkele vereisten waaraan u moet voldoen. Ten eerste moet u al Python 3 hebben geïnstalleerd. Daarnaast hebt u een lokale programmeeromgeving op uw systeem nodig. Deze handleiding is van toepassing op Ubuntu 16.04 en hoger, Debian 8, CentOS 7, Mac OS X en Windows 10.
Bestandsformaten
Er zijn verschillende bestandsformaten die u in Python kunt gebruiken. De onderstaande tabel toont alle verschillende formaten en waar u ze kunt gebruiken:
| Bestandstype | Beschrijving |
|---|---|
| txt | Plat tekstbestand slaat gegevens op die alleen tekens (of strings) vertegenwoordigen en sluit gestructureerde metadata uit. |
| CSV | Kommagescheiden waardenbestand gebruikt komma's (of andere scheidingstekens) om opgeslagen gegevens te structureren, waardoor gegevens in een tabelformaat kunnen worden opgeslagen. |
| HTML | HyperText Markup Language-bestand slaat gestructureerde gegevens op en wordt veel gebruikt bij de meeste websites. |
| JSON | JavaScript Object Notation is een eenvoudig en efficiënt formaat, waardoor het een van de meest gebruikte formaten is om gegevens op te slaan en over te dragen. |
In deze handleiding zullen we het txt-bestandsformaat in meer detail verkennen.
Stap 1: Tekstbestand maken
Eerst moeten we een nieuw tekstbestand maken in Python. We zullen ter verduidelijking een voorbeeld nemen van de dagen van de week. Hiervoor openen we de teksteditor, maken we een nieuw txt-bestand en noemen we dit days.txt. Laten we vervolgens de dagen van de week als afzonderlijke regels in het nieuwe bestand invoeren:
|
1 2 3 4 5 6 7 |
Maandag Dinsdag Woensdag Donderdag Vrijdag Zaterdag Zondag |
Nu we de inhoud hebben, slaan we het bestand op. Het is belangrijk om te onthouden waar u het bestand opslaat. Laten we zeggen dat onze gebruiker sammy is. De gebruiker heeft het bestand op het volgende pad opgeslagen: /users/sammy/days.txt. We zullen dit pad in toekomstige processen gebruiken.
Step 2: Tekstbestand openen
Voordat u kunt beginnen met het schrijven van een programma, moet u een bestand in de editor maken. We maken een bestand genaamd files.py en slaan het op in de /users/sammy map, net als ons days.txt bestand.
Om een bestand te openen, moet u een verbinding tot stand brengen tussen het schijfbestand en de variabele. Dit is wat het 'openen' van het bestand inhoudt. De locatie van het bestand wordt aangegeven door het pad van het bestand. U hebt het pad nodig om het bestand te openen. Het pad van het bestand days.txt is bijvoorbeeld als volgt: /users/sammy/days.txt. Vervolgens maken we een stringvariabele om deze gegevens op te slaan. Zoals u hieronder zult zien, maken we een path variabele in het files.py script en wijzigen we de variabele volgens het pad van days.txt :
|
1 |
path = '/users/sammy/days.txt' |
Daarna openen we, met behulp van de open() functie, het bestand days.txt . Voor deze functie moet u het bestandspad opgeven. Van de verschillende parameters is de modusparameter de belangrijkste. Dit is een optionele string die u kunt toevoegen om de modus op te geven waarin u het bestand opent. Hieronder volgen enkele van de modusopties:
'r’: lezen'w’: schrijven'x’: een nieuw bestand maken en schrijven'a’: gegevens toevoegen aan een bestand'r+’: hetzelfde bestand lezen en schrijven
Om simpelweg uit het bestand te lezen, moet u de 'r’ modus gebruiken. Voer de open() functie uit en open het bestand days.txt . Wijs het vervolgens toe aan de variabele days_file :
|
1 |
days_file = open(path,'r') |
Stap 3: Tekstbestand lezen
Na het openen van het bestand kunnen we eruit lezen via de variabele. Er zijn drie bewerkingen gekoppeld aan het lezen van bestanden. Laten we ze alle drie verkennen.
De eerste bewerking is <file>.read(). Dit toont je de volledige inhoud van het bestand in één string:
|
1 |
days_file.read() |
Output:
|
1 |
'Monday\nTuesday\nWednesday\nThursday\nFriday\nSaturday\nSunday\n' |
<file>.readline(). Dit toont je de volgende regel in het bestand. Het leest het bestand in feite regel voor regel:|
1 |
days_file.readline() |
Output:
|
1 |
'Monday\n' |
|
1 |
days_file.readline() |
Output:
|
1 |
'Tuesday\n' |
<file>.readlines(). Dit toont je een lijst met alle regels in het bestand. Elk item vertegenwoordigt één regel:|
1 |
days_file.readlines() |
Output:
|
1 |
['Monday\n', 'Tuesday\n', 'Wednesday\n', 'Thursday\n', 'Friday\n', 'Saturday\n', 'Sunday\n'] |
Stap 4: Bestand schrijven
Vervolgens leren we hoe we een nieuw bestand kunnen schrijven. Dit bestand heeft in ons voorbeeld de titel (Days of the Week) en vervolgens de dagen van de week.
Om te beginnen moeten we de title variabele maken:
|
1 |
title = 'Days of the Week\n' |
Vervolgens moeten we de dagen van de week opslaan in de vorm van een stringvariabele. Deze variabele wordt days genoemd. We blijven de code gebruiken die we in de bovenstaande stappen hebben gebruikt. We openen het bestand in de leesmodus en slaan de uitvoer op in onze nieuwe days variabele:
|
1 2 3 |
path = '/users/sammy/days.txt' days_file = open(path,'r') days = days_file.read() |
Dit betekent dat we variabelen hebben gemaakt voor zowel de titel als de afzonderlijke dagen van de week. Nu kunnen we het bestand zelf schrijven. De eerste stap is het specificeren van de bestandslocatie met behulp van de map /users/sammy/. In het pad specificeer je ook het nieuwe bestand: /users/sammy/new_days.txt. Het locatiepad blijft onder de variabele new_path. Open vervolgens het bestand in de schrijfmodus met de open() functie in de ‘w’-modus:
|
1 2 |
new_path = '/users/sammy/new_days.txt' new_days = open(new_path,'w') |
Nu het bestand open is, kun je gegevens invoeren met de schrijffunctie <file>.write(). Hier moet je een enkele stringparameter invoeren. Als je een nieuwe regel wilt invoeren, voer dan het newline-teken in. Voor ons bestand voeren we eerst de titel in en daarna de dagen van de week. Daarnaast hebben we ook enkele print-statements om de voortgang van het script te volgen:
|
1 2 3 4 |
new_days.write(title) print(title) new_days.write(days) print(days) |
Stap 5: Bestand sluiten
Wanneer je het bestand sluit, verbreek je de verbinding tussen het bestand op de schijf en de bestandsvariabele. Wanneer het bestand is gesloten, kan het door andere programma's worden geopend. Dit helpt ook om het bestand en de gegevens ervan veilig te houden. Vergeet daarom nooit om de bestanden te sluiten als je klaar bent met het verwerken ervan. Om dit te doen, kun je de <file>.close() functie gebruiken:
|
1 2 |
days_file.close() new_days.close() |
Daarmee is het verwerkingsaspect van bestanden in Python afgerond.
Stap 6: Code controleren
Ten slotte controleren we de code. Dat zou je moeten doen voordat je de code uitvoert die je hebt geschreven. De code zou er ongeveer zo uit moeten zien:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
path = '/users/sammy/days.txt' days_file = open(path,'r') days = days_file.read() new_path = '/users/sammy/new_days.txt' new_days = open(new_path,'w') title = 'Dagen van de week\n' new_days.write(title) print(title) new_days.write(days) print(days) days_file.close() new_days.close() |
Zodra je de code hebt opgeslagen, moet je het Python-script uitvoeren. Daarvoor moet je de terminal openen:
|
1 |
$ python files.py |
Het zal de volgende uitvoer tonen:
|
1 2 3 4 5 6 7 8 9 |
Dagen van de week Maandag Dinsdag Woensdag Donderdag Vrijdag Zaterdag Zondag |
Om je code te controleren, open je het nieuwe bestand dat new_days.txt is. Als alles in orde is, zie je het volgende:
|
1 2 3 4 5 6 7 8 9 |
Dagen van de week Maandag Dinsdag Woensdag Donderdag Vrijdag Zaterdag Zondag |
Als je iets vergelijkbaars met het bovenstaande ziet, heb je de stappen met succes voltooid.
Conclusie
Met deze handleiding wilden we je leren over de basisbestandsformaten in Python 3. Een van de belangrijkste hiervan is het tekstbestandsformaat. We hebben dit in meer detail onderzocht. Nu ben je goed op de hoogte van het proces en de stappen die komen kijken bij het openen, lezen, schrijven en sluiten van gegevensbestanden. Met deze informatie kun je het tekstbestandsformaat effectief gebruiken in je eigen Python-programmeerervaring.
Nu je hebt geleerd hoe je met platte tekstbestanden in Python kunt werken, zijn hier nog enkele handleidingen van onze blog die je op weg helpen met het gebruik van Python:
- Python 3 String Formatters gebruiken
- Loops in Python 3: Break-, Continue- en Pass-statements gebruiken
- Python 3: Een gids voor het converteren van gegevenstypen
- Een webpagina crawlen met Scrapy en Python 3
Veel programmeerplezier!
Reacties
Nog geen reacties. Wees de eerste.