‫Het is tijd om over functies te praten.
‫Dit is waar dingen echt interessant worden, want tot nu toe hebben we functies gezien die functies schrijven waarbij
‫dingen als print, zoals lijst Bolian, we zelfs de invoerfunctie zagen om de invoer te krijgen van wat de gebruikerstypen
‫ook waren en waarmee we acties konden uitvoeren op onze gegevenstypen.
‫Maar de echte kracht komt wanneer we kunnen beginnen met het creëren van onze eigen functies.
‫Dat klopt.
‫We zijn niet beperkt tot wat Python ons geeft.
‫We kunnen onze eigen functies maken en gebruiken in onze programma's.
‫Dus laten we leren hoe dat te doen.
‫De manier waarop we een functie maken in Python en functies bestaat trouwens in alle programmeertalen.
‫Ze zijn heel erg belangrijk.
‫Als we D. F. , waarmee de Python-interpreter weet dat we op het punt staan een functie te definiëren.
‫DSF is een afkorting voor definiëren.
‫Dus de tolk zal zeggen, oké, ze gaan een functie definiëren.
‫Wat wordt de functie?
‫Nou, we kunnen creëren wat we willen.
‫We gebruiken dezelfde naam voor het geval, zoals we doen met variabelen om onze functies te definiëren.
‫Laten we dus opnieuw een functie maken.
‫We noemen het hallo, gewoon een variabele die ik heb gemaakt.
‫Maar deze keer is het een functie omdat we het def-sleutelwoord nu hier gebruiken en hallo zeggen.
‫We voegen ook de haakjes toe om de interpreter te laten weten dat dit iets is waar we
‫actie op gaan ondernemen of dat dit een actie gaat uitvoeren op een gegevenstype.
‫We gebruiken dat, Colin, en binnen dit codeblok kunnen we print zeggen.
‫Hallo.
‫En dat.
‫Is een functie als ik op uitvoeren klik.
‫Hm, er is niets gebeurd.
‫Waarom is dat?
‫Welnu, we hebben de hallo-functie gemaakt, we hebben het gedefinieerd, en nu leeft het ergens in het geheugen op onze
‫machine.
‫Als u echter een functie wilt gebruiken, onthoud dan dat we, net zoals we de afdrukfunctie gebruiken, deze tussen
‫haakjes moeten aanroepen.
‫Dus nadat we een functie hebben gedefinieerd, zeggen we, zeg hallo.
‫En heb je gemerkt hoe mijn Reppel zodra ik zei, zeggen.
‫Zegt me eigenlijk hallo, komen, want ik heb het gemaakt en je ziet dit paarse vak dat laat zien dat
‫het een functie is, nou, we hebben het nu beschikbaar voor ons om te gebruiken, net zoals we de afdrukfunctie voor
‫ons beschikbaar hadden gebruiken.
‫Dus als ik zeg hallo en voer het uit met de haakjes en ik klik op uitvoeren.
‫Ik krijg hallo, hoe cool is dat trouwens, wat gebeurt er als ik het zonder de haakjes uitvoer en ik klik op uitvoeren?
‫Er gebeurt niets omdat, denk eraan, om een actie te ondernemen, we de tolk
‫moeten laten weten, hey, ik wil wegrennen, hallo zeggen.
‫De reden waarom functies zo krachtig zijn, is vanwege het principe waar we het over hebben gehad, toch?
‫Het idee van dry, wat staat voor do not repeat yourself-functies, is echt heel handig als je dingen
‫hebt die je steeds opnieuw wilt doen.
‫Bijvoorbeeld de hersenfunctie, die hebben we veel gebruikt.
‫Stel je voor dat we dat elke keer zelf zouden moeten coderen en zeggen wat de printfunctie doet.
‫Gelukkig geeft Python ons een afdruk omdat het zo'n handig hulpmiddel is.
‫Maar als we in ons programma meerdere keren hallo willen zeggen en je kunt je voorstellen dat dit eigenlijk een stuk
‫ingewikkelder is, misschien 10 regels code, in plaats van die tien regels code steeds opnieuw te schrijven, kan
‫ik het gewoon als een functie definiëren en gebruik het waar ik maar wil.
‫Onthoud dit bijvoorbeeld in mijn programma, waar we een foto hadden en een kerstboom printten.
‫Stel je voor dat we dit meerdere keren zouden willen uitvoeren, wel, om dat te doen, zou ik deze code kopiëren en
‫plakken.
‫En dan weer toegevoegd, en als ik op uitvoeren klik.
‫Ik heb nu twee kerstbomen, maar laten we daar eens naar kijken, zesentwintig regels code, ik kopieer
‫en plak het steeds weer hetzelfde met een functie.
‫We kunnen zoiets doen.
‫Ik kan zeggen definieer show.
‫Tre.
‫Colin, en we hebben nu een functie, maar onthoud, de inspringing in Python, de juiste inspringing is belangrijk.
‫We hebben de puntkomma.
‫We definiëren een functie.
‫Dus we moeten dat codeblok binnenin maken en zeggen, hey, wat hier ook ingesprongen is, dat maakt deel uit van
‫deze functie.
‫Dus nu we de showboom hebben, bekijk dit eens.
‫Ik kan zeggen toon boom, voer het opnieuw uit.
‫Laten we het misschien drie keer doen.
‫Als ik klik, ren dan weg.
‫Hoe cool is dat ik steeds weer hetzelfde kan doen door deze functie gewoon aan te roepen en dat is de
‫kracht van functies.
‫Functies stellen ons in staat om onze code droog te houden.
‫We herhalen onszelf niet en hergebruiken dingen die onze machines steeds opnieuw kunnen doen.
‫En het mooie is dat dit voor ons een herinnering blijft. Toon boom nu betekent iets voor dit programma omdat we
‫het hebben gemaakt.
‫We hebben dus onze eigen actie op maat die we kunnen ondernemen.
‫Wat gebeurt er als ik de showboom hier naar boven verplaats?
‫Nou, als ik dit doe.
‫Ik krijg een luchtnaam, luchtnaam, show drie is niet gedefinieerd.
‫Waarom is dat?
‫Nou, omdat onze tolk eerst regel voor regel gaat, zegt, oke, afbeelding is gelijk aan deze waarde.
‫En dan gaat het naar regel elf en zegt: rennen, laten zien, boom.
‫Maar we hebben nog geen show tree gedefinieerd.
‫Dus de python-interpreter gaat luchten en zegt, hey, ik heb geen idee wat show tree is.
‫Waar heb je het over?
‫In plaats daarvan moeten we bij een functie ervoor zorgen dat we de functies aan het begin definiëren.
‫Dus die Python-interpreter zegt, oké, show tree betekent nu dit.
‫Ik ga het niet runnen.
‫Ik ga het nog niet gebruiken.
‫Ik ga het gewoon in het geheugen bewaren.
‫En als ik eindelijk Show Tree tegenkom, weet ik dat het iets betekent.
‫Ik ga het uit het geheugen halen met behulp van show tree, en dan ga ik het uitvoeren met behulp van de haakjes.
‫Als ik bijvoorbeeld show tree print zonder iets, zonder de haakjes.
‫Als ik op uitvoeren klik.
‫Je ziet dat ik functie krijg, Shokri, op deze locatie, dit is alleen de locatie en
‫het geheugen, dit is de boekenplank waar we die showboomfunctie opslaan, heel erg cool.
‫En functies zijn een belangrijk, krachtig concept bij het programmeren.
‫En in de volgende video gaan we dit uitbreiden en een beetje meer onderzoeken.
‫Ik zie wel in de volgende.