Здравствуйте!
Имеется список из словарей
И есть список значений 'y' :
Нужно удалить все элементы из основного списка, где значения ключа 'y' находятся в списке list_y
Написал код
Выдает результат
Как видно, удалилось не всё. Что я в коде написал не так?
Имеется список из словарей
Python:
list = [
{'img_file': '161_38768_23018.png', 'num': 161, 'x': 387, 'y': 230}
{'img_file': '224_45018_23107.png', 'num': 224, 'x': 450, 'y': 330}
{'img_file': '266_41452_23696.png', 'num': 266, 'x': 414, 'y': 430}
{'img_file': '294_38682_23696.png', 'num': 294, 'x': 386, 'y': 430}
{'img_file': '328_35253_23696.png', 'num': 328, 'x': 352, 'y': 430}
{'img_file': '496_26362_24374.png', 'num': 496, 'x': 263, 'y': 530}
{'img_file': '734_40760_25052.png', 'num': 734, 'x': 407, 'y': 630}
{'img_file': '741_40060_25052.png', 'num': 741, 'x': 400, 'y': 630}
{'img_file': '748_39362_25052.png', 'num': 748, 'x': 393, 'y': 630}
{'img_file': '755_38663_25052.png', 'num': 755, 'x': 386, 'y': 630}
{'img_file': '762_37996_25052.png', 'num': 762, 'x': 379, 'y': 630}
{'img_file': '1056_36136_25730.png', 'num': 1056, 'x': 361, 'y': 730}
{'img_file': '1063_36835_25730.png', 'num': 1063, 'x': 368, 'y': 730}
{'img_file': '1070_37533_25730.png', 'num': 1070, 'x': 375, 'y': 730}
{'img_file': '1077_38232_25730.png', 'num': 1077, 'x': 382, 'y': 730}
{'img_file': '1084_38943_25730.png', 'num': 1084, 'x': 389, 'y': 730}
{'img_file': '1091_39605_25730.png', 'num': 1091, 'x': 396, 'y': 730}
{'img_file': '1098_40304_25730.png', 'num': 1098, 'x': 403, 'y': 730}
]
И есть список значений 'y' :
Python:
list_y=[230, 330, 430, 530, 830]
Нужно удалить все элементы из основного списка, где значения ключа 'y' находятся в списке list_y
Написал код
Python:
for d in list:
if d['y'] in list_y:
list.remove(d)
Выдает результат
Python:
{'img_file': '224_45018_23107.png', 'num': 224, 'x': 450, 'y': 330}
{'img_file': '294_38682_23696.png', 'num': 294, 'x': 386, 'y': 430}
{'img_file': '496_26362_24374.png', 'num': 496, 'x': 263, 'y': 530}
{'img_file': '734_40760_25052.png', 'num': 734, 'x': 407, 'y': 630}
{'img_file': '741_40060_25052.png', 'num': 741, 'x': 400, 'y': 630}
{'img_file': '748_39362_25052.png', 'num': 748, 'x': 393, 'y': 630}
{'img_file': '755_38663_25052.png', 'num': 755, 'x': 386, 'y': 630}
{'img_file': '762_37996_25052.png', 'num': 762, 'x': 379, 'y': 630}
{'img_file': '1056_36136_25730.png', 'num': 1056, 'x': 361, 'y': 730}
{'img_file': '1063_36835_25730.png', 'num': 1063, 'x': 368, 'y': 730}
{'img_file': '1070_37533_25730.png', 'num': 1070, 'x': 375, 'y': 730}
{'img_file': '1077_38232_25730.png', 'num': 1077, 'x': 382, 'y': 730}
{'img_file': '1084_38943_25730.png', 'num': 1084, 'x': 389, 'y': 730}
{'img_file': '1091_39605_25730.png', 'num': 1091, 'x': 396, 'y': 730}
{'img_file': '1098_40304_25730.png', 'num': 1098, 'x': 403, 'y': 730}
Как видно, удалилось не всё. Что я в коде написал не так?