[python] Dynamické vytvoření instance
ViNiL
vinil na zagamma.cz
Středa Březen 2 20:06:31 CET 2005
Dne st 2. března 2005 19:02 cb115118 na tiscali.cz napsal(a):
> Jsem začátečník, snažil jsem se vytvořit funkci, která by dynamicky
> vytvářela instance třídy :(
>
> class trida:
> pass;
>
> def new_objekt(x):
> exec "obj"+str(x)+"= trida"
> exec "global obj"+str(x)
> new_objekt(1)
> print obj1
>
> Traceback (most recent call last):
> File "C:/narozeniny/j.py", line 14, in ?
> print obj1
> NameError: name 'obj1' is not defined
Uff, uff -- jak rikame ja a Vinnetou ;-)
Spravna odpoved na otazku jak zastavit krvaceni pri urezavani ruky neni navod,
ale vyzva "ruku nerezat!" ;-)
Doporucoval bych:
a) bud pouzit parametr jako index (napr. do dictionary) -- tim myslim napr.:
obj = {}
obj[1] = cokoliv
b) nebo resit cely nazev objektu pomoci retezce a adresovat jej pomoci getattr
--
ViNiL, ultimativní opravář komínů
Další informace o konferenci Python