You've constructed your list wrong.
The middle items are all referring to the same list, so updating one causes the change to be reflected in the others
If you show the code you're using to construct the list, I can show you how to fix it.
Alternatively
l = [sublist[:] for sublist in l]
before you begin modifying the lists will decouple all those into new lists