Python 03 - 2.10 tmt 3.3 - datum/tijd, vergelijkingsoperatoren, booleans, booleaanse operatoren

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

This lesson contains 47 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 2.10, 3.1, 3.2, 3.3
https://fundament-online.nl/leeromgeving/content.php?paragraaf_id=114954


Slide 2 - Slide

This item has no instructions

Leerdoelen:
Na deze les kun je:
  • (een beetje) rekenen met datum en tijd
  • uit een datum object in Python het jaar halen
  • het verschil tussen twee data in Python halen
  • een gegeven vergelijkingsoperator toepassen & uitleggen
  • alle booleaanse waarden opnoemen
  • alle booleaanse operatoren opnoemen






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.
Datum en tijd 1/6
Soms heeft je programma een datum en tijd nodig

Bijvoorbeeld als je wilt:
  • berekenen hoe oud iemand (of iets) is
  • berekenen over hoeveel tijd een volgende gebeurtenis is
  • bepalen of een update controle moet worden gedaan
  • bepalen of een periodieke taak moet worden uitgevoerd

Slide 4 - Slide

This item has no instructions

Datum en tijd 2/6
Om datum/tijd functionaliteit te gebruiken in Python is een standaardbibliotheek (standard library) nodig: datetime

Hoe importeerden we ook alweer een library in Python?

Slide 5 - Slide

This item has no instructions

Datum en tijd 2/6
Om datum/tijd functionaliteit te gebruiken in Python is een standaardbibliotheek (standard library) nodig: datetime

Hoe importeerden we ook alweer een library in Python?
met import

import datetime

Slide 6 - Slide

This item has no instructions

Datum en tijd 3/6
We kunnen ook een bepaald gedeelte (module) uit een library importeren, bijvoorbeeld een functie of class
Een class is een verzameling functies

Dat doe je zo:
from datetime import datetime
from  library   import  class / module

Slide 7 - Slide

This item has no instructions

Datum en tijd 4/6
Zoek de verschillen!

from datetime import datetime
print( datetime.now() )

import datetime
print( datetime.datetime.now() )


Slide 8 - Slide

methode is een functie gekoppeld aan een object
Datum en tijd 5/6
de methode .now() geeft ons de huidige tijd:

datetime.now()

Hiermee krijg je het exacte moment dat deze regel wordt uitgevoerd: jaar maand dag uur minuut (milli) seconde

Slide 9 - Slide

methode is een functie gekoppeld aan een object
Datum en tijd 6/6
we kunnen uit de huidige tijd ook een bepaald gedeelte halen, dat doen we met de volgende attributen, zoals:
.year 
.month
.day

print(  datetime.now().year  )

Slide 10 - Slide

This item has no instructions

attribuut
Een attribuut is een kenmerk van het object

Kenmerken (en dus attributen) van een datum zijn bijvoorbeeld dat er een jaar en een dag in zit

Deze attributen moeten wel worden toegekend (is al gedaan bij een library), dus het is niet automatisch zo

Slide 11 - Slide

This item has no instructions

class, functie, methode, attribuut
Resumé:
library en class: from datetime import datetime
functie: print(), input(), len()
methode: .lower(), .upper()
attribuut: .year, .month, .day, .days

Slide 12 - Slide

This item has no instructions

Opdracht #1
  1. Open Thonny
  2. Neem onderstaande code over:
    ditiseenvar = datetime.datetime.now()
    print(ditiseenvar.year)
  3. Druk nu op de groene play knop (of kies F5)
  4. Wat is het resultaat? (oh, had je geen import gedaan?)
  5. Gelukt? Probeer dan de maand te laten zien!
timer
3:00

Slide 13 - Slide

This item has no instructions

Rekenen met een datum 1/2
Je zou denken dat het eenvoudig is om te rekenen met een datum... maar als je iets verder zou denken, dan loop je al snel tegen een probleem aan...

HOE DAN?!

Slide 14 - Slide

This item has no instructions

Rekenen met een datum 2/2
Wat wil je berekenen? Het verschil in seconden? In dagen? Je programma moet begrijpen wat je wil!

Daarvoor kunnen we attributen voor gebruiken:
.days .seconds .microseconds

Slide 15 - Slide

This item has no instructions

Opdracht #2
  1. Pas onderstaande code aan zodat jouw leeftijd in jaren (ongeveer) wordt berekend
  2. from datetime import datetime
    datum1 = datetime(2019, 9, 1)
    datum2 = datetime.now()
    print( ( datum1 - datum2 ).days )
timer
3:00

Slide 16 - Slide

This item has no instructions

Vergelijkingsoperatoren 1/3
We hebben nu een aantal functies gezien en hoe we libraries kunnen importeren, maar programmeren wordt pas echt handig zodra we dingen gaan vergelijken

Daar hebben we twee dingen voor nodig:
  1. Booleaanse waarden, en
  2. vergelijkingsoperatoren

Slide 17 - Slide

This item has no instructions

Booleaanse waarden
Booleaanse waarden zijn de uitkomsten van een vergelijking

Er zijn 2 booleaanse waarden:
  1. TRUE (in Nederlands: WAAR)
  2. FALSE (in Nederlands: ONWAAR)

Slide 18 - Slide

This item has no instructions

Vergelijkingsoperatoren 1/3
Er zijn 2 booleaanse waarden, maar er zijn veel meer verschillende vergelijkingsoperatoren

Wel zijn deze voor veel programmeertalen hetzelfde

Slide 19 - Slide

This item has no instructions

Vergelijkingsoperatoren 2/3





10     <      11   = TRUE 
a operator  b   = booleaanse waarde

Slide 20 - Slide

This item has no instructions

Wat is de uitkomst?

33 > 44 = _____
A
TRUE
B
FALSE
C
fout

Slide 21 - Quiz

This item has no instructions

Wat is de uitkomst?

33 < 44 = _____
A
TRUE
B
FALSE
C
fout

Slide 22 - Quiz

This item has no instructions

Wat is de uitkomst?

100 == 100 = _____
A
TRUE
B
FALSE
C
fout

Slide 23 - Quiz

This item has no instructions

Wat is de uitkomst?

100 =< 100 = _____
A
TRUE
B
FALSE
C
fout

Slide 24 - Quiz

This item has no instructions

Wat is de uitkomst?

10 <= 10 = _____
A
TRUE
B
FALSE
C
fout

Slide 25 - Quiz

This item has no instructions


Welke operator hoort hier?

50 __ 100 = TRUE
A
<
B
>
C
>=
D
<=

Slide 26 - Quiz

This item has no instructions


Welke operator hoort hier?

50 __ 100 = TRUE
A
!=
B
>
C
=>
D
=<

Slide 27 - Quiz

This item has no instructions


Welke operator hoort hier?

100 __ 50 = TRUE
A
<
B
>
C
>=
D
<=

Slide 28 - Quiz

This item has no instructions


Welke operator hoort hier?

50 __ 50 = TRUE
A
<
B
>
C
>=
D
<=

Slide 29 - Quiz

This item has no instructions


Welke operator hoort hier?

50 __ 51 = FALSE
A
<=
B
>=
C
==

Slide 30 - Quiz

This item has no instructions

A moet groter of gelijk zijn aan 100.
Welke operator hoort hier?

print( A __ 100 )
A
<=
B
=>
C
>=
D
==

Slide 31 - Quiz

This item has no instructions

Wat is de uitkomst?

100 => 100 = _____
A
TRUE
B
FALSE
C
fout

Slide 32 - Quiz

This item has no instructions

Wat is de uitkomst?

100 >= 100 = _____
A
TRUE
B
FALSE
C
fout

Slide 33 - Quiz

This item has no instructions

Wat is de uitkomst?

100 >= 10 = _____
A
TRUE
B
FALSE
C
fout

Slide 34 - Quiz

This item has no instructions

Wat is de uitkomst?

100 = 10 = _____
A
TRUE
B
FALSE
C
fout

Slide 35 - Quiz

This item has no instructions

Wat is de uitkomst?

100 == 10 = _____
A
TRUE
B
FALSE
C
fout

Slide 36 - Quiz

This item has no instructions

Wat is de uitkomst?

100 != 10 = _____
A
TRUE
B
FALSE
C
fout

Slide 37 - Quiz

This item has no instructions

Booleaanse operatoren 1/4
We hebben gesproken over booleaanse waarden en  over vergelijkingsoperatoren ... maar wat doen we als we verschillende vergelijkingen willen combineren?

Dus bijvoorbeeld of A groter is dan B OF kleiner dan C?

Daarvoor gebruiken we booleaanse operatoren!

Slide 38 - Slide

This item has no instructions

Booleaanse operatoren 2/4
Python kent 3 booleaanse operatoren:
  1. and (WAAR: alle vergelijkingen moeten WAAR zijn *)
  2. or (WAAR: 1 of meer vergelijking moet WAAR zijn *)
  3. not (de vergelijking die volgt keert om:
    ONWAAR wordt WAAR en WAAR wordt ONWAAR)

* anders is het ONWAAR

Slide 39 - Slide

This item has no instructions

Booleaanse operatoren 3/4
"and" : alles moet TRUE zijn, anders FALSE

"or" : een van de vergelijking moet TRUE zijn, anders FALSE

"not" : TRUE wordt FALSE, en FALSE wordt TRUE

Slide 40 - Slide

This item has no instructions

Booleaanse operatoren 4/4
Je kunt meerdere vergelijkingen combineren:
  • a > b and b < c or c == d
  • a < b or ( b == c or b == e )
  • a <= b and ( b == e and c != e )
  • etc.

Slide 41 - Slide

This item has no instructions

A en B moet groter zijn dan 100.
Welke operator hoort hier?

print( A > 100 ____ B > 100 )
A
and
B
or
C
not
D
Fout in vergelijking

Slide 42 - Quiz

This item has no instructions

A of B moet groter zijn dan 100.
Welke operator hoort hier?

print( A > 100 ____ B > 100 )
A
and
B
or
C
not
D
Fout in vergelijking

Slide 43 - Quiz

This item has no instructions

a = 10
b = 11
c = 12
print(a >= 10 and b != 11)
A
(ಠ︹ಠ)
B
True
C
False
D
Fout in vergelijking

Slide 44 - Quiz

This item has no instructions

a = 10
b = 11
c = 12
print( (a >= 10 and b == 11) and c == 12 )
A
¯\_(´ з `)_/¯
B
True
C
False
D
Fout in vergelijking

Slide 45 - Quiz

This item has no instructions

Leerdoelen:
Nu kun je:
  • (een beetje) rekenen met datum en tijd
  • uit een datum object in Python het jaar halen
  • het verschil tussen twee data in Python halen
  • een gegeven vergelijkingsoperator toepassen & uitleggen
  • alle booleaanse waarden opnoemen
  • alle booleaanse operatoren opnoemen






Slide 46 - 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 47 - Slide

This item has no instructions