Ondersteuning > Programmeren

Vraag over Python (constructor)

(1/1)

BailHope:
Ik ben dus bezig met Python te leren en ik loop tegen het volgende probleem aan.

Ik heb een klasse 'Kaart', die een __init__functie heeft als volgt gedefinieerd:

--- Code: ---class Kaart():
 kaartSoort = "0"
 kaartWaarde = 1

def __init__(self, KaartSoort=None, Kaartwaarde=None):
"""
Initialiseert de variabelen.

Als er geen parameters worden meegegeven, worden beide variabelen
op None gezet.
"""
self.kaartSoort = KaartSoort
self.kaartWaarde = Kaartwaarde
--- Einde van code ---
Als ik dan deze klasse wil aanroepen binnenin een andere module doe ik eerst:
import Kaart

en dan wil ik een Kaart-object aanmaken:
   k1 = Kaart("Harten", "4")
Dit loopt fout en geeft de volgende fout:

--- Code: ---Traceback (most recent call last):
  File "module.py", line 52, in
    k1 = Kaart("Harten", "4")
TypeError: this constructor takes no arguments
--- Einde van code ---
Heeft iemand een idee waarom dit niet gaat?

charclo:
Je had een foutje gemaakt met je inspringingen.

--- Code: ---class Kaart():
    kaartSoort = "0"
    kaartWaarde = 1

    def __init__(self, KaartSoort=None, Kaartwaarde=None):
        """
        Initialiseert de variabelen.

        Als er geen parameters worden meegegeven, worden beide variabelen
        op None gezet.
        """
        self.kaartSoort = KaartSoort
        self.kaartWaarde = Kaartwaarde
   

if __name__ == "__main__":
    k1 = Kaart("Harten", "4")
--- Einde van code ---

BailHope:
Ja, je had gelijk. Het was gewoon een probleem met mijn inspringingen.

Bedankt!!

Navigatie

[0] Berichtenindex

Naar de volledige versie