[python] nechtene propojeni mnozin
Marek Polášek
MarekPolasek na email.cz
Čtvrtek Říjen 14 12:41:21 CEST 2010
Zdravím,
problém je v tom, že pokud provedete R0work = R0, tak se nevytvoří kopie R0, ale pouze se zkopíruje reference na R0. Proto změna provedená nad jedním seznamem se projeví i u druhého.
Jak provést kopii seznamu lze najít třeba na http://stackoverflow.com/questions/184643/what-is-the-best-way-to-copy-a-list-in-python.
S pozdravem
Marek Polášek
> ------------ Původní zpráva ------------
> Od: Charlotte van Leeweneck <vanleeweneck.charlotte na gmail.com>
> Předmět: [python] nechtene propojeni mnozin
> Datum: 14.10.2010 12:27:03
> ----------------------------------------
> Dobry den,
>
> potrebovala bych pomoci s nasledujicim problemem.
>
> R0=[]
> for x in range (8):
> R0.append(x)
> R0work=R0
> R0work[-1]=0
>
> print(R0)
> print (R0work)
>
>
> Cílem bylo, aby mi to nahradilo posledni prvek v mnozine R0work prvkem 0,
> ale mozinu R0 nechalo nedotcenou
> tj. pozadovaný vysledek R0=[0, 1, 2, 3, 4, 5, 6, 7], R0work=[0, 1, 2, 3, 4,
> 5, 6, 0]
> Bohuzel to tak nefunguje a nahrazuje posledni prvek v obou mnozinach. Kde
> delam chybu?
>
>
> Dekuji za odpoved.
> Sarka
>
>
>
Další informace o konferenci Python