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: Python classes  (gelezen 854 keer)

Offline Kiwinote

  • Lid
    • Launchpad
  • Steunpunt: Nee
Python classes
« Gepost op: 2008/07/06, 16:30:57 »
class z:
    list = ['a','b']
    def add(self,y):
        if self.list.count(y) != 1:
            self.list.append(y)

#tests
a=z()
a.list #['a', 'b']#['a', 'b']
a.add('c')
a.list #['a', 'b', 'c']#['a', 'b', 'c']

b=z()
b.list #['a', 'b', 'c']#['a', 'b']
b.add('d')
b.list #['a', 'b', 'c', 'd']#['a', 'b', 'd']

In het rood is de uitvoer die python geeft, in het groen, zoals ik het wil hebben. Is er iemand die weet hoe ik de class kan aanpassen zodat alle tests de gewenste waardes geven?

Offline Kiwinote

  • Lid
    • Launchpad
  • Steunpunt: Nee
Python classes
« Reactie #1 Gepost op: 2008/07/06, 16:36:58 »
Net een oplossing gevonden dat vooralsnog lijkt te werken:

class z:
    def list(self):
        self.list = ['a','b']
    def add(self,y):
        if self.list.count(y) != 1:
            self.list.append(y)

#tests
a=z()
a.list()
a.list #['a', 'b']#['a', 'b']
a.add('c')
a.list #['a', 'b', 'c']#['a', 'b', 'c']

b=z()
b.list()
b.list #['a', 'b']#['a', 'b']
b.add('d')
b.list #['a', 'b', 'd']#['a', 'b', 'd']