Для начала; вы определили Tuple, а не List. Основное различие между ними состоит в том, что Tuples - immutable. Это означает, что если вы хотите изменить свою коллекцию, вам нужно будет использовать список:
my_list = [{'a': 'a0', 't': 't0'}, {'a': 'a1', 't': 't1'}, {'a': 'a2', 't': 't2'}]
Обратите внимание на использование квадратных скобок, а не круглые.
С этими знаниями, вы можете выбрать:
построить еще кортеже опуская значения, которые вы хотите удалить:
my_tuple = ({'a': 'a0', 't': 't0'}, {'a': 'a1', 't': 't1'}, {'a': 'a2', 't': 't2'})
my_new_tuple = tuple(item for item in my_tuple if item['a'] != 'a0')
Или используйте список, и удалить значения, которые дон 't want:
my_list = [{'a': 'a0', 't': 't0'}, {'a': 'a1', 't': 't1'}, {'a': 'a2', 't': 't2'}]
for item in my_list:
if item['a'] == 'a0':
my_list.remove(item)
Вы пытаетесь удалить элемент из списка по мере повтора через этот список? Это, как правило, очень плохая идея. –
Кортежи неизменяемы, вам нужно будет создать новый кортеж, который не включает соответствующие элементы. – jonrsharpe
Ваш код в основном выполняет 'doc = mylist [0]; del doc' ..., это никак не повлияет на контейнер, вы просто удаляете ссылку 'doc' в цикле. –