Opstap¶
Bestanden lezen¶
Leerdoel: een bestand openen, de regels langslopen en zien wat erin staat.
In assets/ staan twee bestandjes om mee te oefenen.
woorden.txt:
appel
peer
banaan
kiwi
mango
metingen.txt, het aantal bezoekers per dag in een week:
182
194
178
211
226
203
199
Opdracht 1¶
Voer onderstaande code uit.
with open("assets/woorden.txt") as file:
for line in file:
print(line)
a. Waarom staat er tussen elk woord een lege regel?
b. Vervang print(line) door print(repr(line)) en voer het opnieuw uit. Wat
zie je nu staan achter elk woord?
# probeer het uit
Opdracht 2¶
Schrijf code die telt hoeveel regels woorden.txt heeft, en dat aantal
afdrukt.
Verwachte uitvoer: 5
# jouw oplossing
Opdracht 3¶
Druk elk woord uit woorden.txt af zonder de lege regel ertussen.
Verwachte uitvoer:
appel
peer
banaan
kiwi
mango
# jouw oplossing
Opdracht 4¶
Tel de getallen in metingen.txt bij elkaar op en druk het totaal af.
Verwachte uitvoer: 1393
Hint
Elke regel is een string, dus "182\n". Met int(line) maak je daar een getal
van; die functie heeft geen last van de newline.
# jouw oplossing
Opdracht 5¶
Druk de drukste dag uit metingen.txt af, oftewel het hoogste getal.
Verwachte uitvoer: 226
# jouw oplossing
Bestanden schrijven¶
Leerdoel: een bestand aanmaken en er regels in zetten.
Opdracht 6¶
Schrijf de getallen 1 tot en met 10 naar een bestand telling.txt, elk op een
eigen regel. Lees het bestand daarna weer in en druk de inhoud af om te
controleren dat het gelukt is.
# jouw oplossing
Opdracht 7¶
Maak een bestand lang.txt met daarin alleen de woorden uit woorden.txt die
langer zijn dan vier letters.
Het bestand moet daarna dit bevatten:
appel
banaan
mango
Let op
Je leest uit het ene bestand en schrijft naar het andere. Je hebt dus twee keer
een with open(...) nodig. Denk na over welke van de twee om de lus heen hoort:
je wilt lang.txt niet bij elk woord opnieuw leegmaken.
# jouw oplossing