So I had a very unusual problem with deleting elements from lists, I have recreated the problem in a much smaller and easier to understand format. Basically deleting an item from a list will delete the same item from a different list you have previously set equals to the original list outside of the main loop.
a = [1,2,3,4]
b = a
while True:
print("a:", a)
print("b:", b)
c = int(input("delete"))
del(a[c])
print("a:", a)
print("b:", b)
break
This returns:
a: [1, 2, 3, 4]
b: [1, 2, 3, 4]
delete2 #the "2" is my input
a: [1, 2, 4]
b: [1, 2, 4]
>>>
I researched and saw a few things about shallow/deep copies, but i'm not too sure about that, if anyone could shed some more light that would be great