Nieuws:

We zijn er weer.

Na lange tijd van afwezigheid zijn we er weer  :laugh:
We hebben alle wachtwoorden gereset, je oude wachtwoord werkt niet meer.Je moet via het "wachtwoord vergeten"-linkje je wachtwoord resetten. Je krijgt hiervoor een mailtje op het adres dat je bij ons geregistreerd hebt.

De komende tijd zijn we nog druk bezig om de rest van de site op te bouwen, dus het kan zijn dat sommige onderdelen (tijdelijk) niet werken.

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

Auteur Topic: Vraag over Python (constructor)  (gelezen 1521 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