Could someone explain why:
b = 10*[[]]
b[0].append(3)
b now is:
[[3], [3], [3], [3], [3], [3], [3], [3], [3], [3]]
but if I do:
b = [[] for _ in range(10)]
b[0].append(3)
b is now:
[[3], [], [], [], [], [], [], [], [], []]
Also note that
10*[[]] == [[] for [] in range(10)]
returns
True
(Tested in Python 3.6.1)