a = [ 1, 2 ]
b = a
a.append(3)
print(b) # shows [ 1 2 3 ] which means b changed
c = 4
d = c
c = 8
print(d) # shows 4 which means d did not change
Why did b change, but d did not? the .append changed the value stored in b, but c = 8 did not change the value in d