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 <[email protected]> > 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 > > > _______________________________________________ Python mailing list [email protected] http://www.py.cz/mailman/listinfo/python
