Как сопоставить две записи dict на основе определенного значения поля - PullRequest
0 голосов
/ 14 октября 2019

Итак, я не был уверен, как это сделать эффективно. Я знаю способ сделать это, но он очень неэффективен.

Вот ситуация. Возьмите следующую структуру данных:

R1.yml

   [{‘interface’: ‘g0/0/1’, ‘role’: ‘active’, ‘ha_ip’: ‘192.168.10.1’}, {‘interface’: ‘g0/0/2’, ‘role’: ‘standby’, ‘ha_ip’: ‘192.168.20.1’}]

R2.yml

   [{‘interface’: ‘g0/0/1’, ‘role’: ‘standby’, ‘ha_ip’: ‘192.168.10.1’}, {‘interface’: ‘g0/0/2’, ‘role’: ‘active’, ‘ha_ip’: ‘192.168.20.1’}]

Итак, я хочу определить пару хостовна основе имени хоста (в имени файла yml, которое я знаю, как это сделать) и определения идентичных IP-адресов высокой доступности (высокой доступности). Также необходимо знать, какой из них активен, а какой - в режиме ожидания, чтобы узнать последовательность применения конфигураций к устройствам.

Выполнение вложенных циклов может работать, но если у меня будет более 50 таких файлов, это может занять много времени.

Есть ли лучший способ сделать это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...