[python] Pocet instancí ob jektu
Jiri Vit
jirivit na jirivit.com
Středa Leden 25 14:45:51 CET 2006
Aha, no clovek se porad uci :-)
Muj dotaz o kontrole by tedy byl relevantnejsi v pripade,
ze by se zkouselo neco takoveho?:
class trida:
inst=0
def __init__(s,new=True):
if new:
trida.inst += 1
Pak by stacilo jen zkontrolovat, jestli nova promenna jiz obsahuje
instanci vytvorenou z te tridy. Napadl me nejaky spinavy trik jako:
try:
if trida.__name__ == str(prom.__class__)[9:]:
prom = trida(False)
except NameError:
prom = trida()
Taky by me zajimal ten postup s weakref.
Jirka
On Wed, 25 Jan 2006 12:09:48 +0100, David Necas (Yeti) wrote
> On Tue, Jan 24, 2006 at 02:20:32PM +0100, Jiri Vit wrote:
> > Chybi tam kontrola. Kdyz udelam 2x
> > >>> c=MojeTrida()
> > >>> c=MojeTrida()
> >
> > pak mam v tridni promenne inst dva objekty
>
> Kontrola čeho? Primární problém je v tom, že si třída drží
> referenci na každou svou instanci. Jednou vytvořené instance
> proto nemohou nikdy zaniknout. Když už by se to dělalo
> takhle, měly by se používat slabé (weak) reference.
>
> Yeti
>
> --
> That's enough.
> _______________________________________________
> Python mailing list
> Python na py.cz
> http://www.py.cz/mailman/listinfo/python
--
Jiri Vit
tel. 608182795
mail: jirivit na jirivit.com
web: http://jirivit.com
Další informace o konferenci Python