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.