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: Klasse controleren (Python)  (gelezen 1198 keer)

Offline BailHope

  • Lid
    • Techneut
  • Steunpunt: Nee
Klasse controleren (Python)
« Gepost op: 2008/08/31, 19:29:25 »
Dit is eigenlijk een vraag betreffende Generics onder Python maar Google kon me niet voort helpen.

Ik heb een klasse Map. Deze klasse neemt in de constructor twee parameters aan, allebei moeten deze van het type Location (nog een klasse van mij) zijn. Een ander type mag niet geaccepteerd worden om fouten te voorkomen. Ik begrijp niet hoe ik ervoor kan zorgen dat enkel objecten van het type Location kunnen worden geaccepteerd.

Via Google kwam ik op de volgende mogelijkheid uit, maar deze werkt niet correct:
if startingPoint.__class__ != "location.Location":
         raise Exception("The StartingPoint was not a valid Location-object")
Die Exception wordt wel geraised als ik gewoon een String meegeef, maar wordt OOK geraised als ik wel een correct Location-object meegeef.

Ik dacht dat het misschien lag aan het feit dat ik twee strings vergelijk met de operator "!=". Onder Java weet ik dat dit niet mag, maar op een site over Python stond dat het wel mocht.

Is er iemand die raad weet?
Ubuntu user #12046
Mijn blog voor techneuten: http://techneut.wordpress.com
Voor de professionele IT'er: http://it-potato.blogspot.com

Offline Rulus

  • Lid
  • Steunpunt: Nee
Klasse controleren (Python)
« Reactie #1 Gepost op: 2008/09/01, 14:24:54 »
Ik denk dat je iets zoekt zoals isinstance?