[python] Přetížení třídní metody
Jaroslav Aster
50861 na mail.muni.cz
Čtvrtek Květen 5 09:44:55 CEST 2005
Petr Prikryl píše v Čt 05. 05. 2005 v 08:41 +0200:
> Předpokládám, že nežádoucí je jiné jméno metody
> při jejím volání. Při definici nepokládám jiné
> jméno metody za závadu. Pak lze psát:
>
Předpokládáte správně.
> class C:
>
> def __init__(self):
> self.method = self.objectmethod
>
> def objectmethod(self, fname):
> print "objectmethod:", fname
>
> @classmethod
> def method(cls, profile, fname):
> print "classmethod:", profile, fname
>
>
> C.method("profil", "soubor")
> C().method("soubor")
>
Toto vypadá přesně tak jak potřebuji.
> Pro případ, že byste byl student Masarykovy university
> a tohle byla domácí úloha, ponechávám vysvětlení na Vás.
>
Student Masarykovy univerzity jsem, ale domací ukol to není. Pracuji na
transformační knivhovně a rozhodl jsem se to napsat v Pythnou z důvodu
snadného načtení dynamicky generovaného kódu. V Pythonu začínám, tak
ještě přesně nevím, co si v tomto jazyku mohu dovolit. Každopádně děkuji
za radu.
--
Jaroslav 'orm' Aster
Další informace o konferenci Python