In het voorbeeld van Louiseโ€™s Spotify playlist heb je kennisgemaakt met een klasse.

โ— Klasse in Python

Een klasse in Python is een zelfgedefinieerde datastructuur die de organisatie van gegevens beschrijft. Een klasse heeft:

  • een naam
  • attributen (variabelen)
  • methodes (functies)

In Python ziet een klasse er als volgt uit:

class Naam:

    def __init__(self, parameters):

        attributen

๐Ÿ‘€ Voorbeeld - Spotify playlist onder de loep

De Spotify playlist is een voorbeeld van een klasse:

  • De naam is Spotify
  • De klasse heeft drie attributen: afspeellijst, huidig_liedje en huidige_index
  • Er is รฉรฉn methode volgende()
class Spotify:

    def __init__(self,liedjes):
        self.afspeellijst = liedjes
        self.huidige_index = 0
        self.huidig_liedje = liedjes[self.huidige_index]

    def volgende(self):
        volgende_index = self.huidige_index + 1
        # controleer of de hele lijst doorlopen is
        if volgende_index == len(self.afspeellijst):
            # als de hele lijst doorlopen is, begin je terug van vooraf aan
            self.huidige_index = 0
        else:
            # als de hele lijst nog niet doorlopen is, dan wordt de huidige index een cijfertje hoger
            self.huidige_index = volgende_index
        self.huidig_liedje = self.afspeellijst[self.huidige_index]

๐Ÿ‘‰ De functie __init__()

De functie __init__() is steeds aanwezig en zorgt voor de initialisatie: alle attributen krijgen een beginwaarde. De parameters van de __init__()-functie kunnen gebruikt worden voor die initialisatie. Bijvoorbeeld, liedjes.

๐Ÿ‘‰ De naam van een klasse

De naam van een klasse kunnen we zelf kiezen. We laten deze naam steeds beginnen met een hoofdletter. Net zoals bij variabelen en functies is het aangewezen om de naam zodanig te kiezen dat het duidelijk is wat de klasse voorstelt. Bijvoorbeeld, Spotify.

๐Ÿ‘‰ De attributen

De attributen zijn de variabelen in de klasse. Bijvoorbeeld, afspeellijst.

๐Ÿ‘‰ De methodes

De methodes zijn de functies in de klasse, die aangeven hoe de attributen in de klasse gemanipuleerd kunnen worden. Bijvoorbeeld, volgende().

๐Ÿ’ป Programmeeroefening - Huisdieren

We willen een klein stukje code schrijven dat een huisdier moddeleert. Elk huisdier heeft een naam.

Kopieer en plak de code in de editor hieronder, pas de __init__()-functie aan zodat de parameter naam aan het attribuut naam toegekend wordt. Voer daarna de code uit om het huisdier โ€œFluffyโ€ aan te maken en diens naam op te vragen.

class Huisdier:

    def __init__(self, naam):
        # HIER AANPASSEN

# Dit hoort niet meer bij de klasse.
mijn_dier = Huisdier("Fluffy")
print(mijn_dier.naam)