Python 08 - 5.5 tmt 5.7 - geneste aanroepen, return, scope, declareren, gegevensvalidatie

                      Python
1 / 31
next
Slide 1: Slide
InformaticaWOStudiejaar 4,5

This lesson contains 31 slides, with interactive quizzes and text slides.

time-iconLesson duration is: 45 min

Items in this lesson

                      Python

Slide 1 - Slide

This item has no instructions

Fundament
Kerndomein D

D. Python
Hoofdstuk 5.5 tmt 5.7
https://fundament-online.nl/leeromgeving/content.php?paragraaf_id=114966



Slide 2 - Slide

This item has no instructions

Leerdoelen:
Na deze les kun je:
  • uitleggen hoe je functies nest
  • beschrijven wanneer je return gebruikt en waarom
  • verschillende scopes benoemen en uitleggen
  • aangeven welke scope een variabele heeft
  • uitleggen wat gegevensvalidatie is
  • gegevensvalidatie in code kunnen toepassen






Slide 3 - Slide

Rode achtergrond betekent: klas is stil, dit zijn de leerdoelen en quizzes waarbij niet overlegd mag worden.

Doel van deze les is om het leren zichtbaar te maken voor zowel leerling als docent.
Nesten
Zoals we in HTML tags konden nesten, kunnen we dat ook doen met Python code:

print( int( input("Hoe oud ben je? ") ) )

(kleuren hier alleen om de functies goed te onderscheiden)
(ook de spaties bij de haakjes zijn voor leesbaarheid)

Slide 4 - Slide

This item has no instructions

Return 1/4
In de vorige les hebben we een user-defined function gezien

Wat we niet hebben behandeld is hoe we weer informatie van die functie terug kunnen krijgen... bekijk deze code:

Slide 5 - Slide

This item has no instructions

Return 2/4
Wat we nodig hebben is een return
Met een return geef je aan dat er iets terug moet komen uit de functie (zie regel 3 hieronder en bekijk de output):

Slide 6 - Slide

This item has no instructions

Return 3/4
Je kunt dit:



Ook zo doen:

Slide 7 - Slide

This item has no instructions

Return 4/4
Zonder return komt er niets terug uit de functie!

Wel kun je in een functie bepaalde variabelen aanpassen... maar daar is iets voor nodig dat we niet hebben behandeld:
scope

Slide 8 - Slide

This item has no instructions

Opdracht #1
timer
3:00

Slide 9 - Slide

This item has no instructions

Scope
Met scope geef je aan wat het "bereik" van een variabele is

Er zijn 2 verschillende scopes:
  • local
  • global

Hoe je de scope aangeeft, verschilt per programmeertaal

Slide 10 - Slide

This item has no instructions

Scope: local
Local scope hebben:
  • parameters van en binnen een functie (a hieronder)
  • variabelen gemaakt binnen een functie (b hieronder)


Slide 11 - Slide

This item has no instructions

Scope: global 1/2
Variabelen hebben een global scope wanneer ze:
  • gemaakt zijn buiten een functie (a hieronder)
  • voorafgegaan worden door "global" (b hieronder)


Slide 12 - Slide

This item has no instructions

Scope: global 2/2
Let op: als een variabele wordt aangemaakt 
binnen een functie, dan bestaat die variabele pas buiten de functie zodra de functie is aangeroepen! 

Vergelijk:

Slide 13 - Slide

This item has no instructions

Gegevensvalidatie 1/4
Met valideren controleer je gegevens of ze goed zijn... wat "goed" is, hangt er maar net vanaf

Als je vraagt om een getal vanaf 0 tot en met 10, dan is alles onder 0 en boven 10 niet goed

Valideren kan dus vooral nodig zijn na input()

Slide 14 - Slide

This item has no instructions

Gegevensvalidatie 2/4
Een while-loop gaat door zolang de voorwaarde WAAR is

Gegevensvalidatie is om te kijken of de gegevens "valide" zijn, als ze NIET valide zijn, moet de while-loop activeren (en dus WAAR zijn)

We moeten de vergelijking dus omdraaien!

Slide 15 - Slide

This item has no instructions

Gegevensvalidatie 3/4
Je blijft de validering herhalen tot hij wel valide is!

Voor deze herhaling wordt vaak de while-loop gebruikt:



Zolang "vraag < 1" blijft het programma in de while loop

Slide 16 - Slide

This item has no instructions

Gegevensvalidatie 4/4
Bijvoorbeeld:
  • vraag: kies een getal van 0 of hoger
  • while-validatie: als getal kleiner is dan 0
  • vergelijking: while getal < 0:
    of
  • vergelijking: while not getal >= 0 :

Slide 17 - Slide

This item has no instructions

Welke scope heeft variabele a?




A
local
B
global

Slide 18 - Quiz

This item has no instructions

Welke scope heeft variabele a?





A
local
B
global

Slide 19 - Quiz

This item has no instructions

Welke scope heeft variabele a?



A
local
B
global

Slide 20 - Quiz

This item has no instructions

Wat wordt geprint?





A
10
B
niets
C
foutmelding

Slide 21 - Quiz

This item has no instructions

Wat wordt geprint?

A
11
B
niets
C
foutmelding

Slide 22 - Quiz

This item has no instructions

Wat wordt geprint?

A
11
B
niets
C
foutmelding

Slide 23 - Quiz

This item has no instructions

Wat wordt geprint?


A
10
B
100
C
niets
D
foutmelding

Slide 24 - Quiz

This item has no instructions

In je programma wordt om input gevraagd van een gebruiker
De input wordt opgeslagen in variabele "a"
Variabele "a" moet 1 of groter zijn en 100 of kleiner

Welke loop gebruik je voor validering?


A
while-loop
B
for-loop
C
niets

Slide 25 - Quiz

This item has no instructions

In je programma wordt om input gevraagd van een gebruiker
De input wordt opgeslagen in variabele "a"
Variabele "a" moet 1 of groter zijn en 100 of kleiner

Welke loop gebruik je voor validering?


A
while a > 1 or a < 100:
B
while a < 1 or a < 100:
C
while a < 1 or a > 100:
D
geen van deze

Slide 26 - Quiz

This item has no instructions

In je programma wordt om input gevraagd van een gebruiker
De input wordt opgeslagen in variabele "a"
Variabele "a" moet 1 of groter zijn en 100 of kleiner

Welke loop gebruik je voor validering?


A
while a > 1 or a < 100:
B
while a < 1 or a < 100:
C
while a < 1 or a > 100:
D
geen van deze

Slide 27 - Quiz

This item has no instructions

In je programma wordt om input gevraagd van een gebruiker
De input wordt opgeslagen in variabele "a"
Variabele "a" moet 1 of groter zijn en 100 of kleiner

Welke loop gebruik je voor validering?


A
while a > 1 and a < 100:
B
while a > 1 and a > 100:
C
while a < 1 and a > 100:
D
geen van deze

Slide 28 - Quiz

This item has no instructions

In je programma wordt om input gevraagd van een gebruiker
De input wordt opgeslagen in variabele "a"
Variabele "a" moet 1 of groter zijn en 100 of kleiner

Welke loop gebruik je voor validering?


A
while a < 1 or a > 100:
B
while a < 1 and a > 100:
C
while a < 1 or 100 > a:
D
geen van deze

Slide 29 - Quiz

This item has no instructions

Leerdoelen:
Nu kun je:
  • uitleggen hoe je functies nest
  • beschrijven wanneer je return gebruikt en waarom
  • verschillende scopes benoemen en uitleggen
  • aangeven hoe je een bepaalde scope gebruikt
  • uitleggen wat gegevensvalidatie is
  • gegevensvalidatie in code kunnen toepassen






Slide 30 - Slide

Rode achtergrond betekent: klas is stil, dit zijn de leerdoelen en quizzes waarbij niet overlegd mag worden.

Doel van deze les is om het leren zichtbaar te maken voor zowel leerling als docent.

Slide 31 - Slide

This item has no instructions