Can someone please explain why this happens in Python?
>>> a = [1, 2, 3]
>>> b = a
>>> b[0] = 2
>>> print a
[2, 2, 3]
>>> a[0] = 4
>>> print b
[4, 2, 3]
>>> b = [111]
>>> print a
[4, 2, 3]
Basically, why can I reassign elements within a or b and change the other, but not change the other if I completely modify the list? Thank you!