[python] Statické metody v Pythonu
Petr Prikryl
PrikrylP na skil.cz
Středa Listopad 8 11:45:51 CET 2006
Stejně je ale otázka, jestli opravdu chci používat
statické metody třídy. V podstatě jsou elegantní jen
v případě, kdy používají proměnné stejné třídy.
A zavádění proměnných třídy v Pythonu asi taky
není moc časté.
Odhaduji, že požadavek na použití statické metody
třídy může být zlozvyk z Javy, kde to jinak nejde.
V jazycích, které to umožňují, je lepší zavést
pro zvláštní skupinu funkcí oddělený prostor jmen.
V Pythonu se to dělá založením souboru-modulu.
Zápis pak vypadá úplně stejně.
Třída, která definuje jen statické funkce je vlastně
jen oklikou zavedený modul definující prostor jmen,
který je určen identifikátorem třídy.
pepr
radek
> samozrejme, ze to jde (i bez dekoratoru ;)
> class trida:
> def static(klass,i):
> print i
> static=classmethod(static) # tohle je misto dekoratoru
> superman
> > Nevíte, jak udělat statickou metody v Pythonu, myslím
> > metodu, které není vázána k instanci, tedy self,
> > ale jen ke třídě. [...]
Další informace o konferenci Python