class Test:<br>
 &nbsp; &nbsp; &nbsp;&nbsp; def __init__(self):<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; self.val = []<br><br><div class="gmail_quote">2008/6/19 Jáchym Barvínek &lt;<a href="mailto:jachymb@gmail.com">jachymb@gmail.com</a>&gt;:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Narazil jsem na jednu věc která mě docela zarazila (a značně mi vadí v<br>
kódu :)) - totiž že když vytvořím instanci třídy která má jako jeden z<br>
podobjektů seznam, tak pokud do toho seznamu něco přidám přidá se to ale<br>
i do všech ostatních instancí této třídy.<br>
Nějak takto:<br>
<br>
class Test:<br>
 &nbsp; &nbsp; &nbsp; &nbsp;val = []<br>
some = {1:Test(), 6:Test()}<br>
some[1].val.append(&quot;G&quot;)<br>
print some[1] == some[6] # False<br>
print some[6].val == some[1].val == [&quot;G&quot;] # True - Proč?<br>
<br>
<br>
Nenapadá mě nic co bych s tim moh dělat a nebyla by to totální prasárna.<br>
Proč se to děje anebo jak jinak byste to řešili?<br>
<br>
_______________________________________________<br>
Python mailing list<br>
<a href="mailto:Python@py.cz">Python@py.cz</a><br>
<a href="http://www.py.cz/mailman/listinfo/python" target="_blank">http://www.py.cz/mailman/listinfo/python</a><br>
</blockquote></div><br>