Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Vraag over Python (constructor)  (gelezen 1825 keer)

Offline BailHope

  • Lid
    • Techneut
  • Steunpunt: Nee
Vraag over Python (constructor)
« Gepost op: 2008/06/09, 22:25:19 »
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:
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
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:
Traceback (most recent call last):
  File "module.py", line 52, in
    k1 = Kaart("Harten", "4")
TypeError: this constructor takes no arguments
Heeft iemand een idee waarom dit niet gaat?
Ubuntu user #12046
Mijn blog voor techneuten: http://techneut.wordpress.com
Voor de professionele IT'er: http://it-potato.blogspot.com

Offline charclo

  • Lid
  • Steunpunt: Nee
Vraag over Python (constructor)
« Reactie #1 Gepost op: 2008/06/09, 23:22:14 »
Je had een foutje gemaakt met je inspringingen.
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")
HP Pavilion dv6660eb - Intel Core 2 Duo T7250 2 GHz - 2 GB ram - Nvidia GeForce 8400M GS 128 MB --> Dualboot Ubuntu en Windows Vista
P4 2.6 GHz - 1GB ram - NVIDIA GS7600 - 20 inch Benq widescreen --> Dualboot Ubuntu en Windows XP

Offline BailHope

  • Lid
    • Techneut
  • Steunpunt: Nee
Vraag over Python (constructor)
« Reactie #2 Gepost op: 2008/06/10, 00:19:56 »
Ja, je had gelijk. Het was gewoon een probleem met mijn inspringingen.

Bedankt!!
Ubuntu user #12046
Mijn blog voor techneuten: http://techneut.wordpress.com
Voor de professionele IT'er: http://it-potato.blogspot.com