Я хотел бы сравнить список строк в словарях с другим списком словарей в Python. Если href
в secondary_list
недоступно в main_list
, href
будет добавлено в main_list
.
На основании этого требования был реализован приведенный ниже код.
main_list = [
{'href': 'red'},
{'href': 'yellow'},
{'href': 'yellow'},
]
secondary_list = [
{'href': 'yellow'},
{'href': 'redf'},
{'href': 'blue'},
]
for g in secondary_list:
if not any(d.get('href', None) == g["href"] for d in main_list):
main_list.append({'href': g["href"]})
Но, скажем, если у нас очень большой список в обоих словарях, реализация, использующая два цикла for, может быть неэффективной.
Могу ли я узнать, можно ли сделать приведенный выше код более эффективным и уплотнить? Еще лучше, если существует пакет, о котором я не знаю?