programmeren

in python

Jaar 3 - Module 0 - Les 1: Python achtergrond

VANDAAG GAAN WE...

 

  • Meer theorie leren over Python

  • Leren wat een datatype is

  • Leren welke datatypes er zijn

  • Leren waarom een datatype belangrijk is

Variabelen

 

  • Een variabele in Python

a = 1928
print(a)
1928
b = 'blablabla'
print(b)
blablabla
c = 3.14
print(c)
3.14
d = ['blabla', 'bliblibli', 
     'blobloblo']
print(d)
['blabla', 'bliblibli', 
 'blobloblo']

Variabelen en datatype

 

  • Elke variabele heeft een datatype

a = 1928
print(a)
print(type(a))
1928
<class 'int'>
b = 'blablabla'
print(b)
print(type(b))
blablabla
<class 'str'>
c = 3.14
print(c + 1)
print(type(c))
4.14
<class 'float'>
d = ['blabla', 'bliblibli', 
     'blobloblo']
print(d+1)
print(type(d))
['blabla', 'bliblibli', 
 'blobloblo']
<class 'list'>

Variabelen en datatype

 

  • Het datatype bepaalt wat je kan doen

  • Tel één erbij op (+1)

a = 1928
print(a+1)
print(type(a))
1929
<class 'int'>
b = 'blablabla'
print(b+1)
print(type(b))
TypeError: can only concatenate str (not "int") to str
<class 'str'>
c = 3.14
print(c+1)
print(type(c))
4.14
<class 'float'>
d = ['blabla', 'bliblibli', 
     'blobloblo']
print(d+1)
print(type(d))
TypeError: can only concatenate list (not "int") to list
<class 'list'>

Variabelen en datatype

  • Het datatype bepaalt wat je kan doen

  • vermengivuldig met 3 (*3)

a = 1928
print(a * 3)
print(type(a))
5784
<class 'int'>
b = 'blablabla'
print(b * 3)
print(type(b))
'blablablablablablablablabla'
<class 'str'>
c = 3.14
print(c * 3)
9.42
<class 'float'>
d = ['blabla', 'bliblibli', 
     'blobloblo']
print(d * 3)
['blabla', 'bliblibli', 'blobloblo', 
 'blabla', 'bliblibli', 'blobloblo', 
 'blabla', 'bliblibli', 'blobloblo']
<class 'list'>

demo

Waarom belangrijk?

  • Herken fouten
lijst = ['fiets', 'auto', 'step']
print(lijst[0])
print(lijst[2.0])
fiets
Traceback (most recent call last):
  File "main.py", line 3, in <module>
    print(lijst[2.0])
TypeError: list indices must be integers or slices, not float

Waarom belangrijk?

  • Herken fouten
import turtle
pen = turtle.Turtle()

pen.forward('100')
Traceback (most recent call last):
  File "main.py", line 4, in <module>
    pen.forward('100')
  File "/nix/store/2vm88xw7513h9pyjyafw32cps51b0ia1-python3-3.8.12/lib/python3.8/turtle.py", line 1638, in forward
    self._go(distance)
  File "/nix/store/2vm88xw7513h9pyjyafw32cps51b0ia1-python3-3.8.12/lib/python3.8/turtle.py", line 1605, in _go
    ende = self._position + self._orient * distance
  File "/nix/store/2vm88xw7513h9pyjyafw32cps51b0ia1-python3-3.8.12/lib/python3.8/turtle.py", line 257, in __mul__
    return Vec2D(self[0]*other, self[1]*other)
TypeError: can't multiply sequence by non-int of type 'float'

Waarom belangrijk?

  • Mogelijkheden, wat kan ik met een variabele?
lijst = ['kaas', 'worst', 'aardappel']
lijst.remove('kaas')
print(lijst)

woord = 'het gaat goed'
woord.remove('goed')
print(woord)
['worst', 'aardappel']
Traceback (most recent call last):
  File "main.py", line 6, in <module>
    woord.remove('goed')
AttributeError: 'str' object has no attribute 'remove'

opdracht

  • Maak een nieuw excel bestand
     
  • Voeg de kolommen 'variabele' en 'datatype' toe
     
  • Gebruik je script van de simulatie, vul in excel alle variabelen en het datatype in die je in je script gebruikt

opdracht

import turtle
pen = turtle.Turtle()

afstand = 100
hoek = 35.9
for i in range(25):
  pen.forward(afstand)
  pen.left(hoek)
  • Maak een nieuw excel bestand
     
  • Voeg de kolommen 'variabele' en 'datatype' toe
     
  • Gebruik je script van de simulatie, vul in excel alle variabelen en het datatype in die je in je script gebruikt

opdracht

  • Stuur je excel naar mij op voor dinsdag 16:59

Python Klas 3 - Module 0 - Les 1

By Ebbens

Python Klas 3 - Module 0 - Les 1

Leerdoel: Data van de geschiedenisquiz (Module 1.3) opslaan in een Excelsheet.

  • 227