![]() |
[INF] Python
Ik heb een programma geschreven met classen. Nu heb ik dus de classe huisdieren, en daaromder de subclasse katten. De opdracht is dat je een aantal katten invoerd en deze kan oproepen. Maar nu zijn er 2 dingen die niet helemaal goed werken, en ik weet niet waarom.
Deel 1 Code:
# We roepen een kat aan. --> Ik snap niet waarom hij dat doet. Deel 2 Dit is mijn hoofdclasse: Code:
class Huisdier(object): 18 jaar Poes Zwart 1,9 kg --> Maar hij print gewoon: ('Moortje', '18 jaar', 'Poes', 'Zwart', '1,9 kg') Kan iemand helpen? |
Let een beetje op je opmaak, in het vervolg. Zeker voor Python-code zijn de [code][/code]-tags onontbeerlijk!
Goed, wat er mis is met je code: je moet moortje als volgt aanmaken: Code:
moortje = Huisdier( ... ) Verder, om te laten printen moet je ook de method/functie/procedure __str__(self) definiëren. (dus met def __str__(self): ....). Die laat je een string returnen die dient voor de weergave. Een regeleinde geef je weer met \n trouwens. Bij het aanroepen doe je trouwens nog iets mis: je kijkt of naam == moortje. Maar moortje is een object van de klasse huisdier (subklasse kat zie ik nergens in je code), die kan nooit gelijk zijn aan een str. Hoewel je in dit geval waarschijnlijk door het toevoegen van die method __str__ ervoor zorgt dat hij wel kan checken, maar dat je dan alles exact hetzelfde moet ingeven. Waarop je moet controleren is dit: naam == moortje.naam. |
thanks :D
|
Alle tijden zijn GMT +1. Het is nu 19:35. |
Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.