Drop hier links of afbeeldingen om ze aan de editor toe te voegen.

We kunnen met klassen aan de slag gaan door eerst objecten van die klasse aan te maken, en daarna hun methodes te gebruiken.

👀 Voorbeeld - Aan de slag met Spotify

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]

Louise maakt gebruik van de Spotify-klasse om een playlist op te stellen met haar favoriete liedjes.

louises_liedjes = ['Sk8er Boi','Allemaal','Piano Man','Sultans of Swing','Dancing Queen','Jailhouse Rock']
louises_lijst = Spotify(louises_liedjes)
print('Het huidige liedje is',louises_lijst.huidig_liedje)
louises_lijst.volgende()
print('Het huidige liedje is',louises_lijst.huidig_liedje)

Ook Alex maakt gebruik van Spotify, maar hij heeft een andere muzieksmaak.

alexs_liedjes = ['Mother Earth','Leviathan','Senjutsu','Requiem']
alexs_lijst = Spotify(alexs_liedjes)
print(alexs_lijst.huidig_liedje)
alexs_lijst.volgende()
print(alexs_lijst.huidig_liedje)

Beide playlists zijn gemaakt van dezelfde klasse. Toch hebben de attributen andere waarden in de twee gevallen: de liedjes in Louise haar lijst zijn anders dan in die van Alex.

We noemen Spotify(louises_liedjes) en Spotify(alexs_liedjes) objecten van dezelfde klasse.

❗ Object

Een object is een instantie van een klasse. Een object heeft specifieke waarden voor de attributen van die klasse.

đŸ’» Programmeeroefening - Object van Alya’s playlist

Alya wil de nummers ‘Rolling in the Deep’, ‘Shallow’, ‘Easy on Me’ en ‘Someone Like You’ in haar playlist.

  • Kopieer en plak eerst de klasse Spotify in de editor hieronder.
  • Maak een object alyas_lijst aan met die nummers en print daarna het huidige liedje op het scherm.
  • Spoel één nummer door en print nogmaals het huidige liedje.