[python] referencia

Pavel Kosina geon na post.cz
Úterý Květen 23 15:39:11 CEST 2006


balky napsal(a):
> Zdravim,
>
> da sa spravit v pythone trvala referencia na nejaky objekt? Nieco ako 
> smernik v C.
> Maly priklad asi povie viac:
>
>  >> a = 12
>  >> b = a
>  >> b
> 12
>  >> a = 15
>  >> b
> 15
>
> Viem, ze v pythone a = 12 neznamena, ze do a priradim 12, ale ze a je 
> referencia na objekt typu integer s hodnotou 12. Ako spravit, aby som sa 
> odkazoval na tu referenciu, nie na obsah tej referencie
> _______________________________________________
>   
číslo ne neměnitelný typ, proto když uděláš to druhé a=15, vznikne na 
úplně jiném místě paměti objekt 15 a b bude ukazovat tam. Tím se také 
zruší vazba b=a.
Řešením je použití měnitelných objektů, objektů, jejichž obsah se dá 
měnit, aniž by se měnilo jejich místo v paměti. Jsou to třeba instance, 
seznamy, slovníky, ....


 >>> class A:
...   pass
...
 >>>
 >>> a=A()
 >>> b=a
 >>> a.c=7
 >>> b.c
7

-- 
geon
Pavel Kosina



Další informace o konferenci Python