PDAT01 - 2122 - 2. Variabelen

Python Variabelen
1 / 37
volgende
Slide 1: Tekstslide
Communication & multimedia designHBOStudiejaar 1

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

time-iconLesduur is: 60 min

Onderdelen in deze les

Python Variabelen

Slide 1 - Tekstslide

Ik wil het vandaag met jullie gaan hebben over.....
  • Je leert wat variabelen zijn,
  • Hoe je variabelen declareert in Python
  • Over verschillende data types

Slide 2 - Tekstslide

Deze slide heeft geen instructies

Waar denk je aan bij iets dat variabel is?
A
Iets wat altijd hetzelfde blijft
B
Iets wat steeds kan veranderen
C
Een kleur
D
Het getal 13

Slide 3 - Quizvraag

Deze slide heeft geen instructies

Een variabele is als een rugzak:
ze zijn bedoeld om er iets in te bewaren. 
Zolang jij weet welke rugzak van jou is, kun je je spullen terugvinden. 
Het uiterlijk helpt dus bij het herkennen van je tas en dankzij het handvat en de schouderbanden kun je hem pakken wanneer je hem nodig hebt.

Slide 4 - Tekstslide

Deze slide heeft geen instructies

Opslaan en erbij 'pakken' op de computer
Op de computer wordt alle informatie in nullen en éénen opgeslagen. De computer weet wel wáár hij alles opslaat. Alle adressen slaat hij op in een register, maar voor ons mensen is dat niet erg toegankelijk.

Door informatie in een variabele op te slaan kunnen wij er wél bij.

De naam van de variabele werkt nu als een handvat (handle) of label
ik: "kun je 235 onthouden?
pc: ja, done.
ik: kun je me vertellen wat je moest onthouden?
pc: Sure, welke van de 121,000,000,000 computations

die ik de afgelopen seconde gemaakt heb?
ik: uhm, de laatste?
pc: je laatste vraag ging over het opvragen van data, maar je gaf geen adres.

Slide 5 - Tekstslide

Deze slide heeft geen instructies

nog een keer data opvragen,
nu met variabele:
ik: "Als ik X zeg, kun jij dan 235 antwoorden?
pc: ja, dat kan.
ik: X!
pc: 235




of zoals je dat in python zou doen:
x = 235
print(x)
>>235
hier zeg je de computer om 235 te onthouden als variabele x
1
hier vraag je de computer de waarde van x naar het scherm te printen
2
op de Commandline zou de computer zo het antwoord geven
3

Slide 6 - Tekstslide

Deze slide heeft geen instructies

Variabelen gebruik je om informatie op te slaan
Iedere variabele heeft een unieke naam, ook wel label genoemd. Dit werkt als handvat (handle) waarmee de juiste data op het juiste moment kan worden opgevraagd.

Variabelen zijn essentiëel bij het programmeren, omdat tijdens het uitvoeren van een algoritme er meestal heel wat moet worden onthouden!

Maar: variabelen bestaan alleen zolang een python programma loopt, dus zolang het CMD-raam niet wordt gesloten. Het gaat dus om het tijdelijk opslaan van informatie. Om de informatie definitief te bewaren, moet je alles naar bestanden wegschrijven. 
(ofwel zorgen voor output, maar dat leer je later)



CMD = Commandline, ofwel de Command-line interface. Het zwarte venster dat verschijnt als je CMD in het windows zoekvenster typt en waarmee je opdrachten aan je pc kunt geven.

Slide 7 - Tekstslide

Deze slide heeft geen instructies

Waar denk je aan bij een 'mutant'?

Slide 8 - Tekstslide

Deze slide heeft geen instructies

Muteren = veranderen
Als je veranderingen aanbrengt in een database, dan noemen we dat bijvoorbeeld ook een mutatie.
Variabelen zijn bedoeld om steeds andere informatie te bevatten. Ze mogen dus veranderen. Vandaar dat ze variabel zijn.

Slide 9 - Tekstslide

Deze slide heeft geen instructies


wat zou immutable dan betekenen?

Slide 10 - Open vraag

Deze slide heeft geen instructies

Kan de waarde van een variabele veranderen?
A
ja
B
nee

Slide 11 - Quizvraag

Deze slide heeft geen instructies

Wat is declareren?
Of de liefde gedeclareerd?
Moest jij wel eens iets bij de douane declareren?
Of heb je weleens kosten gedeclareerd bij je werkgever?

Slide 12 - Tekstslide

Deze slide heeft geen instructies

Variabelen moet je declareren
In veel talen moet je variabelen declareren voordat je ze kunt gebruiken. Python is daar wat makkelijker in. Zodra hij een variabele ziet gaat hij er vanuit dat je die dus wel zult willen gebruiken en reserveert hij ruimte in zijn geheugen. 

Je kunt variabelen aanmaken door er direct een waarde aan toe te kennen. Je kunt ook lege variabelen aanmaken die je later wil gebruiken. 

Python zal analyseren welke data-type er in jouw variabele is opgeslagen. Dit bepaalt hoeveel geheugen er moet worden gereserveerd. Soms moet je in de loop van je programma van data-type veranderen, omdat je data van het verkeerde type is. Dat heet type-casting 
Als iemand zijn arm in gyps heeft zitten, dan heet dit in het Engels een 'cast' . Eigenlijk is casten het maken van een afgietsel - zoals wanneer je gyps in een vorm giet en dat een beeld oplevert. Casten levert dus een vormverandering op: van vormloos tot gevormd. In programmeertaal wordt het gebruikt om aan te geven dat tussen verschillende data-types geconverteerd wordt.

Slide 13 - Tekstslide

Deze slide heeft geen instructies

Variabelen Declareren
Wat je doet is het toewijzen van data aan een variabele
Links van het =teken plaats je de naam
Rechts de waarde die moet worden opgeslagen 
naam = "Victor"    # data-type string
leeftijd = 45      # data-type integer
lengte: 1.85       # data-type float
docent: WAAR       # data-type Boolean
String = tekst (denk aan een vlaggen-slinger met op elke vlag een letter)
Integer = heel getal
float = komma-getal
Booleans zijn eigenlijk binair. Ze stellen WAAR of NIET WAAR voor, maar dat kun je ook schrijven met 1 en 0.

Slide 14 - Tekstslide

Deze slide heeft geen instructies

Je wil een getal in een variabele opslaan. Waar zie je hiervan een voorbeeld? kies alle correcte antwoorden.
De naam van de variabele moet links staan, de waarde rechts
A
myvar = 25
B
5 = y
C
x=1
D
8 = 3

Slide 15 - Quizvraag

Deze slide heeft geen instructies

Hieronder staan de 4 meestvoorkomende data-types.
Van welk data-type zijn waardes in deze variabelen?
n = 31

DocentNaam = "Patrick"

ToetsScore = 5,5

Voldoende = WAAR
String
Integer
Float
Boolean

Slide 16 - Sleepvraag

Deze slide heeft geen instructies

Naamgeving
Het label van een variabele mag bestaan uit letters, cijfers en een underscore (_)

Een label mag NIET beginnen met een cijfer!



Slide 17 - Tekstslide

Deze slide heeft geen instructies

Wat is GEEN juiste naam voor een label in python?
A
naam
B
antwoord_1
C
1_antwoord
D
_naam

Slide 18 - Quizvraag

Deze slide heeft geen instructies

Je wil een getal in een variabele opslaan. Waar zie je hiervan een voorbeeld? kies alle correcte antwoorden.
A
2e = 15
B
5 = y
C
x=3
D
_temp = 35

Slide 19 - Quizvraag

Deze slide heeft geen instructies

Wat is GEEN juiste naam voor een label in python?
Er kan geen spatie in een variabele zitten! De naam, of het label moet uit 1 woord bestaan.
A
antwoord 1
B
_Naam
C
antwoord1
D
Leeftijd

Slide 20 - Quizvraag

Deze slide heeft geen instructies

Conventies in naamgebruik
Het is gebruikelijk om elk woord in een variabele-naam met hoofdletters te beginnen, maar verder kleine letters te gebruiken. Bij een underscore is een hoofdletter minder nodig.
Soms worden ook alleen hoofdletters ín de variabele gebruikt, niet aan het begin:
CamelCase    of    Variabele_naam    of   lowerCamelCase  

Slide 21 - Tekstslide

Deze slide heeft geen instructies


Waar zie je een voorbeeld van een variabele in CamelCase?
A
datum_controle
B
dijkhoogte
C
start_temperatuur
D
BreedteWegdeel

Slide 22 - Quizvraag

Deze slide heeft geen instructies

De waarde van een Variabele kun je later weer opvragen.
Zelfs complexe algoritmes bestaan uiteindelijk vaak uit vele regels vrij eenvoudige code: statements. Variabelen maken het mogelijk het resultaat van 1 statement in een volgend statement te gebruiken. 
Een variabele dient dus voor het tijdelijk opslaan van het antwoord van een berekening. De waarde vraag je later op aan de hand van de naam van de variabele:

antwoord1 = 5 * 10
antwoord2 = antwoord1 - 10

Slide 23 - Tekstslide

Deze slide heeft geen instructies


De prijs voor het huren van een huisje is:
 prijs = 15.5*dagen
Over de prijs moet nog 21% btw betaald worden.
Bereken met deze informatie de eindprijs (generiek)

Slide 24 - Open vraag

Deze slide heeft geen instructies

Variabelen maken het mogelijk om
generieke code te maken.
Met generieke code bedoelen we code waarvoor de variabelen nog niet zijn ingevuld. Er is dus nog een onbekende, maar als je die generieke code eenmaal hebt en je wil dat algoritme doorrekenen met een bepaalde waarde, dan kan dat heel snel en elke keer weer. Zonder variabelen zouden we dus niks kunnen automatiseren
antwoord1 = 5 * variabeleX
antwoord2 = antwoord1 - 10

Vul maar eens verschillende waardes in voor VariabeleX. Je krijg dan elke keer een ander antwoord1 en een ander antwoord2 als je doorrekent. Maar wel altijd volgens hetzelfde algoritme!

Slide 25 - Tekstslide

Deze slide heeft geen instructies

Python wordt alleen in het geheugen uitgevoerd. 
Wat er gebeurt als python wordt uitgevoerd is dus niet zichtbaar, tenzij jij om output vraagt, of als je een error-message krijgt. Maar als alles goed gaat, dan zal een python script juist geruisloos draaien en worden afgesloten. Soms is geen nieuws dus goed nieuws!
antwoord1 = 5 * 10
antwoord2 = antwoord1 - 10
print("Het antwoord is: " + antwoord2)

de print-statement is de meest eenvoudige en meestgebruikte manier om output van python te krijgen. Hiermee kun je zien welke waarde in een variabele is opgeslagen, of wat de uitkomst van je berekening is. Gebruik heel veel print-statements bij het debuggen!

Slide 26 - Tekstslide

Deze slide heeft geen instructies

Hello world
"Hello World" is de meest eenvoudige test die programmeurs gebruiken als ze met een nieuwe taal of in een nieuwe werk-omgeving aan de slag gaan. In Python ziet dat er zo uit: 
print("Hello world!")

Dit is een print-statement. Python is een goed leesbare taal. De naam van het commando is kort en duidelijk. Hiermee wordt niet naar een printer geprint, maar naar een scherm!
Hier staat geen variabele tussen de haakjes, maar een tekst-string. Deze zijn te herkennen aan de aanhalingstekens waar de tekst in staat. De aanhalingstekens geven aan waar de tekst begint en eindigt ze maken geen deel uit van de inhoud van de string. Je ziet ze dus niet terug in de output.
je mag enkele of dubbele aanhalingstekens gebruiken om een string te maken. Je mag alleen de tekens niet mengen. Wat je opent moet je ook sluiten. Dit maakt dat je dan het andere teken nog in de string kunt gebruiken.
Print is een commando. Dat betekent dat er iets moet worden uitgevoerd. Eigenlijk roep je dus een functie aan. Functies zijn te herkennen aan de haakjes en eventueel de variabelen tussen de haakjes. In dit geval schrijf je tussen de haakjes wat er naar het scherm geprint moet worden.

Slide 27 - Tekstslide

Deze slide heeft geen instructies

Variabelen herken je aan het feit dat ze niet tussen haakjes staan en geen haakjes of aanhalingstekens om zich heen hebben. Kies alle juiste opties.
A
[1,45,231,3,]
B
x
C
restproduct
D
analyseer():

Slide 28 - Quizvraag

Deze slide heeft geen instructies

oefenen met data-types
hierna volgen enkele vrage over de data-types die je hebt leren kennen.

Slide 29 - Tekstslide

Deze slide heeft geen instructies

Als je tekst gaat opslaan in een variabele dan is de variabele welk datatype?
A
String
B
Integer
C
Float
D
Boolean

Slide 30 - Quizvraag

Deze slide heeft geen instructies

Je wil het getal 25 in een variabele opslaan. Van welk data-type is die variabele dan?
A
String
B
Integer
C
Float
D
Boolean

Slide 31 - Quizvraag

Deze slide heeft geen instructies

Je wil een komma-getal in een variabele opslaan: 6,5. Van welk data-type is dit getal?
A
String
B
Integer
C
Float
D
Boolean

Slide 32 - Quizvraag

Deze slide heeft geen instructies

schrijf de code voor het opslaan van het getal 6 in een variabele genaamd "onthoud"

Slide 33 - Open vraag

Deze slide heeft geen instructies

Data types
Er kan dus verschil zitten in het weergeven van de uitvoer van een variabele.

%s gebruik je voor strings (tekst)
%d gebruik je voor integers (gehele getallen)
%f gebruik je voor floating point (kommagetallen)



Slide 34 - Tekstslide

Deze slide heeft geen instructies

Hoe geef ik een variabele weer in de uitvoer?
In onderstaande code zet je de variabele achteraan de zin, achter een %-teken. In de string plaats je vervolgens %d om te tonen dat daar de variabele moet worden ingevoerd.
antwoord1 = 5 * 10
antwoord2 = antwoord1 - 10
print("Het antwoord is: %d" % antwoord2)

Slide 35 - Tekstslide

Deze slide heeft geen instructies

Nog een voorbeeld
Je slaat de naam en leeftijd op in een variabele. Je wilt weten hoe oud iemand over 10 jaar is.
naam = "Kees"
leeftijd = 50
leeftijd_10jaar = leeftijd + 10
print("Je naam is %s en over 10 jaar ben je %d" % (naam, leeftijd_10jaar))

Slide 36 - Tekstslide

Deze slide heeft geen instructies

Het getal pi, maar dan korter
Bij een kommagetal kan het voorkomen dat je een maximaal aantal getallen achter de komma wilt weergeven. Het getal zal dan automatisch worden afgerond.
pi = 3.14159265359
print("Het getal pi met 2 cijfers achter de komma is %.2f" % pi)
print("Het getal pi met 4 cijfers achter de komma is %.4f" % pi)
print("Het getal pi met 6 cijfers achter de komma is %.6f" % pi)

Slide 37 - Tekstslide

Deze slide heeft geen instructies