WIN wk10 / H5 / Python in Windows (Bestanden)

Python in Windows
Programmeren basis-II
Hoofstuk 5 / Week 10
1 / 38
volgende
Slide 1: Tekstslide
Applicatie- en mediaontwikkelaarMBOStudiejaar 1

In deze les zitten 38 slides, met interactieve quizzen en tekstslides.

Onderdelen in deze les

Python in Windows
Programmeren basis-II
Hoofstuk 5 / Week 10

Slide 1 - Tekstslide

Deze slide heeft geen instructies

Wat gaan we doen?
  • Even kijken of alles is blijven hangen
  • Terugkijk op de weekcheck
  • H5: Python in Windows (Bestanden)
  • Weekcheck H5: Transscript-analyzer

Slide 2 - Tekstslide

Deze slide heeft geen instructies

Maak een list filmTitles aan met daarin de volgende films
Aliens, Star Wars, The Dark Knight, Iron Man,

Slide 3 - Open vraag

Deze slide heeft geen instructies

Ik wil Iron Man op het scherm tonen uit onderstaande list.
Wat is de juiste code.

filmTitles = ["Aliens", "Star Wars", "The Dark Knight", "Iron Man"]
A
print(filmTitles[4])
B
print = filmTitles(4)
C
print(3)
D
print(filmTitles[3])

Slide 4 - Quizvraag

Deze slide heeft geen instructies

Maak een list-of-dictionaries movieList aan voor de volgende films en gegevens. Zie evt. boekje p28.

Title: Aliens, Jaar: 1986
Title: Star Wars, Jaar: 1977

Slide 5 - Open vraag

Deze slide heeft geen instructies

We willen de jaartallen van de films op het scherm zien. Welke code komt er in de scope van onderstaande code?

for movie in movieList:
..................................
A
print(movie("Jaar"))
B
print(movie["Jaar"])
C
print(movieList["Jaar"])
D
print(movieList[Jaar]

Slide 6 - Quizvraag

Deze slide heeft geen instructies

We willen de titel en het genre van de film op het scherm tonen
movieList = [{"Title": "Aliens", "Genre": "SciFi"}]
for ______ in _______: :
    print(_______)
    print(_______)

movie
movieList
movie["Title"]
"Title"
movie["Genre"]
movie("Title")
"Genre"
movie("Genre")

Slide 7 - Sleepvraag

Deze slide heeft geen instructies

Ik wil op de groene comment-lijn een stuk code waarmee de ingevoerde film wordt toegevoegd aan de lijst. Welke code moet ik hier typen? Zie evt. p25.

Slide 8 - Open vraag

Deze slide heeft geen instructies

Bespreken weekcheck
De docent neemt met jullie de weekcheck door

Slide 9 - Tekstslide

Deze slide heeft geen instructies

Opletten
Op de volgende twee slides een extra uitleg over de werking van list, dictionairies in combinatie met loops.


carList[0] 
voor het ophalen van een enkele waarde

carList["merk"] 
Gebruiken bij een enkele dictionary. (Dus niet een list met dictionaries)

Slide 10 - Tekstslide

Deze slide heeft geen instructies

Opletten

Slide 11 - Tekstslide

Deze slide heeft geen instructies

Slide 12 - Tekstslide

Deze slide heeft geen instructies

H5: Python in Windows
Ontwikkelomgeving voor Python:
  • Installeren Python
  • Installeren Visual Studio Code
  • Koppelen van Visual Studio Code


Slide 13 - Tekstslide

Deze slide heeft geen instructies

Run-knop: dit is enige echte run-knop die we met Python gebruiken. Je ziet op meer plekken "run" staan, maar dat is vooral voor andere programmeertalen.
Linker menu:
  1. Explorer:  alle bestanden en mappen die je open hebt staan.
  2. Search: spreek voor zich.
  3. Source control: niet gebruiken, komt in blok B of C.
  4. Run: niet gebruiken, voor andere talen.
  5. Marketplace: je kunt hier extensies vinden en installeren.
  6. Test: niet gebruiken, komt in blok B of C.
Explorer: alle open bestanden en mappen.
Terminal: opent nadat je voor het eerst op run drukt. Je ziet hierin de output van je programma, en je kunt eventueel input geven. Let niet teveel op de blauwe tekst. Dit zijn de regels waarmee Code je programma opstart.
--
--
--

Slide 14 - Tekstslide

Deze slide heeft geen instructies

patroon 2.4
Bladzijde 15
patroon 2.6
Bladzijde 16
patroon 3.1
Bladzijde 19
timer
15:00
Lezen + maken paragraaf 2 t/m 4.
Volg héél goed de stappen.


Klaar? Opdracht 5:

Slide 15 - Tekstslide

Deze slide heeft geen instructies

Werken met bestanden
  • Je kunt in Python werken met bestanden
  • Gegevens schrijven naar een bestand
  • Gegevens ophalen uit een bestand.
  • We beginnen simpel met een text bestand.

Slide 16 - Tekstslide

Deze slide heeft geen instructies

Einddoel deze week
Analyseren van een tekstbestand: hoeveel regels en hoeveel woorden?


Slide 17 - Tekstslide

Deze slide heeft geen instructies

Hoe werkt het

Slide 18 - Tekstslide

Deze slide heeft geen instructies

Hoe werkt het

Slide 19 - Tekstslide

Deze slide heeft geen instructies

Hoe werkt het

Slide 20 - Tekstslide

Deze slide heeft geen instructies

Bestand openen
Wordt opgeslagen in een variabele.

Hierin zit niet de inhoud van het bestand, maar alleen een verwijzing naar de locatie ervan.
Locatie en bestandsnaam, net als je bij WEB hebt geleerd.
De modus waarin je het bestand wil openen. De belangrijkste opties zijn:
  • ‘r’ – read: open om te lezen
  • ‘w’ – overwrite: open om te schrijven, gooi bestaande inhoud weg
  • ‘a’ – append: open om te schrijven, voeg toe onderaan het bestand

Slide 21 - Tekstslide

Deze slide heeft geen instructies

Bestand uitlezen

Slide 22 - Tekstslide

Demo geven
Bestand sluiten

Slide 23 - Tekstslide

Demo geven

(demo)

Slide 24 - Tekstslide

Demo geven

Opdracht

Lees + maak
paragraaf 6 - 11, 
zie bladzijde 34 en 35.





Klaar? Verder met H5.

Als de timer afloopt: opdrachten 10 en 11 doornemen, je krijgt vragen.
timer
20:00
Stilte, werk voor jezelf
Overleg met buur is ok
Werk in groepjes

Slide 25 - Tekstslide

Deze slide heeft geen instructies

We willen de inhoud van het bestand films.txt tonen op het scherm. Wat wordt de code?

Slide 26 - Open vraag

myFile = open("films.txt" , "r")
for line in myFile:
    print(line, end="")
myFile.close()
Bestand analyseren - Aantal regels
1. Gebruik een variabele om te tellen
         lineCount = 0

2. Open het bestand
        songFile = open("song.txt", "r")

Slide 27 - Tekstslide

Deze slide heeft geen instructies

Bestand analyseren - Aantal regels
1. Gebruik een variabele om te tellen
         lineCount = 0

2. Open het bestand
        songFile = open("song.txt", "r")

3. Maak een loop
         for line in songFile:

Slide 28 - Tekstslide

Deze slide heeft geen instructies

Bestand analyseren - Aantal regels
1. Gebruik een variabele om te tellen
         lineCount = 0

2. Open het bestand
        songFile = open("song.txt", "r")

3. Maak een loop
         for line in songFile:

4. Optioneel: print de line op het scherm
         print(line, end="")

Slide 29 - Tekstslide

Deze slide heeft geen instructies

Bestand analyseren - Aantal regels
1. Gebruik een variabele om te tellen
         lineCount = 0

2. Open het bestand
        songFile = open("song.txt", "r")

3. Maak een loop
         for line in songFile:

4. Optioneel: print de line op het scherm
         print(line, end="")

5. Tel bij de variabele lineCount 1 op.
         lineCount += 1

Slide 30 - Tekstslide

Deze slide heeft geen instructies

Bestand analyseren - Aantal regels
1. Gebruik een variabele om te tellen
         lineCount = 0

2. Open het bestand
        songFile = open("song.txt", "r")

3. Maak een loop
         for line in songFile:

4. Optioneel: print de line op het scherm
         print(line, end="")

5. Tel bij de variabele lineCount 1 op.                                                                       6. Sluit het bestand
         lineCount += 1                                                                                                                    songFile.close()

Slide 31 - Tekstslide

Deze slide heeft geen instructies

Bestand analyseren - Aantal Woorden
Aantal woorden in een zin:
    - Alle woorden in een list zetten met de code:
          line.split()

Tellen hoeveel items er in de list staan. (dus het aantal woorden)
          len()

Samenvoegen naar één regel code
          len(line.split())

bovenstaande code zet dus alle woorden uit één line in een list en telt de woorden.
Het aantal wordt opgeslagen in een variabele plaatsen:
          wordCountPerLine = len(line.split())

Slide 32 - Tekstslide

Deze slide heeft geen instructies

Opdracht

Lees + maak
paragraaf 12 - 13, 
zie bladzijde 35.





Klaar? Verder met H5.

Als de timer afloopt: opdracht 13 doornemen, je krijgt vragen.
timer
5:00
Stilte, werk voor jezelf
Overleg met buur is ok
Werk in groepjes

Slide 33 - Tekstslide

Deze slide heeft geen instructies

We willen het aantal woorden in het bestand films.txt op het scherm zien.
Schrijf schrijf de code die dit mogelijk maakt.

Slide 34 - Open vraag

Deze slide heeft geen instructies

Naar bestand schrijven
Let op de modus waarin je het bestand opent:
    file.open("d:\oefen.txt", "w")  -->  Overschrijf alles
    file.open("d:\oefen.txt", "a")    -->  Voeg toe aan het bestand

Toevoegen van een zin:

     file.write("Deze zin toevoegen aan het bestand")

Let op: De zin wordt pas toegevoegd op het moment dat je het bestand sluit.
    file.close()

Slide 35 - Tekstslide

Deze slide heeft geen instructies

Opdracht

Lees + maak
paragraaf 14 - 15, 
zie bladzijde 35.





Klaar? Start aan de weekcheck.

Als de timer afloopt: opdracht 15 doornemen, je krijgt vragen.
timer
5:00
Stilte, werk voor jezelf
Overleg met buur is ok
Werk in groepjes

Slide 36 - Tekstslide

Deze slide heeft geen instructies

We willen de regel "Dit is een zin." toevoegen aan het bestand d:\test.txt
Wat wordt de code?

Slide 37 - Open vraag

Deze slide heeft geen instructies

Opdracht:
Maak de weekcheck.

(Er is geen video, omdat er geen input in de terminal komt. Je ziet in het groene kader wel hoe de output in report.txt exact moet zijn).





Klaar?
  • Bonusopdracht weekcheck (tip: eerste werkende code inleveren voor je hieraan start).
  • Herhalingsopdrachten p38
Stilte, werk voor jezelf
Overleg met buur is ok
Werk in groepjes

Slide 38 - Tekstslide

Deze slide heeft geen instructies