По сути, у меня есть список словарей, обычно каждый словарь имеет менее 20 пар ключ: значение, и в списке около 70 000 словарей. Размер списка составляет около 360M байт. По сути, я хочу найти словари, содержащие определенное ключевое слово, создать новый список и удалить их из старого списка. Вот мой код:
new_list = []
for item in old_list:
if 'keyword' in item:
new_list.append(item)
old_list.remove(item)
Что случилось, так это то, что после первого запуска я все еще могу найти словари, которые содержат «ключевое слово» в старом списке. Я запускаю один и тот же код 2-й и 3-й раз, каждый раз, когда размер new_list увеличивается, а old_list уменьшается.
Кажется, это очень простая проблема, но я не могу понять, почему это происходит. Я сделал что-то не так?