[python] Referencia

Tomas Fulajtar ful_tom na yahoo.com
Čtvrtek Únor 2 19:08:13 CET 2006



--- balky <vbalko na gmail.com> wrote:

> Zdravim,
> 
> pokial viem, tak ak do premennej priradim nieco,
> nepriradil som vlastne 
> obsah tej premennej, ale iba odkaz(pointer) na ten
> objekt.
> 
>  >>> a = [1,2,3]
>  >>> b = a
>  >>> print b
> [1,2,3]
>  >>> a = [3,3,3]
>  >>> print a
> [3,3,3]
>  >>> print b
> [1,2,3]
> 
> 
> Ako zabezpecim, aby sa pri zmene hodnoty a zmenila
> aj hodnota v b? Nie 
> je b iba odkaz na a? Alebo je to odkaz na ine a?
> 

Ano, b je odkaz na a, kter yv tonto pripade obsahuje
seznam. Pokud budete menit pouze prvky seznamu, v b
zmeny uvidite (reference na samotny objetk b je
zachovana).

nebo-li:

>>> a = [1,2,3]
>>> b = a
>>> print b
 [1,2,3]
>>> a[0] = 8
>>> print a
[8,2,3]
>>> print b
[8,2,3]

Ve Vasem pripade jste ale do a priradil novy objekt, o
cemz zakonite objekt b "nema paru". 

nebo muzete obsah celeho seznamu a prepsat novym:
>>> a[:] = [4,5,6,7]
>>>print b
[4,5,6,7]


Zdravim,
  Tomas Fulajtar

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 



Další informace o konferenci Python