What I mean is, for an integer:
>>> a = 2
>>> def b():
... a += 1
...
>>> b()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 2, in b
UnboundLocalError: local variable 'a' referenced before assignment
While for a list (or say for a list element):
>>> a = [0]
>>> def b():
... a[0] += 1
...
>>> b()
>>> a[0]
1
a += [1].