Nieuws:

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

Auteur Topic: Klasse controleren (Python)  (gelezen 1636 keer)

Offline BailHope

  • Lid
    • Techneut
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
Klasse controleren (Python)
« Reactie #1 Gepost op: 2008/09/01, 14:24:54 »
Ik denk dat je iets zoekt zoals isinstance?