I am confused by python's handling of pointers. For example:
a=[3,4,5]
b=a
a[0]=10
print a
returns [10, 4, 5]
The above would indicate that b and a are pointers to the same location. The issue is what if we say:
a[0]='some other type'
b now equals ['some other type', 4, 5]
This is not the behavior I would expect as python would have to reallocate the memory at the pointer location due to the increase in the size of the type. What exactly is going on here?