как бы вы отсортировали этот список интерфейсов маршрутизатора? - PullRequest
1 голос
/ 27 марта 2019

Я попытался отсортировать этот список, используя

sorted(list_of_interfaces, key = lambda x:x.split(':')[0].split('/')[2])

однако я не получаю желаемого результата.

В основном, первые интерфейсы должны быть xe-0/0/0:0, за которыми следуют xe-0/0/0:1, xe-0/0/0:2 и xe-0/0/0:3. Оттуда следующий интерфейс должен быть xe-0/0/1:0 и так далее. По какой-то причине мой код ставит xe-0/0/10 сразу после xe-0/0/1, как показано ниже. Любое предложение?

xe-0/0/0:3
xe-0/0/0:2
xe-0/0/0:1
xe-0/0/0:0
xe-0/0/1:1
xe-0/0/1:3
xe-0/0/1:0
xe-0/0/1:2
xe-0/0/10:0
xe-0/0/10:3
xe-0/0/10:1
xe-0/0/10:2
xe-0/0/11:2
xe-0/0/11:1
xe-0/0/11:3
xe-0/0/11:0
xe-0/0/12:2
xe-0/0/12:1
xe-0/0/12:0
xe-0/0/12:3
xe-0/0/13:2
xe-0/0/13:3
xe-0/0/13:1
xe-0/0/13:0
xe-0/0/14:1
xe-0/0/14:0
xe-0/0/14:3
xe-0/0/14:2
xe-0/0/15:2
xe-0/0/15:0
xe-0/0/15:1
xe-0/0/15:3
xe-0/0/2:1
xe-0/0/2:3
xe-0/0/2:0
xe-0/0/2:2
xe-0/0/3:1
xe-0/0/3:2
xe-0/0/3:3
xe-0/0/3:0
xe-0/0/4:2
xe-0/0/4:3
xe-0/0/4:0
xe-0/0/4:1
xe-0/0/5:1
xe-0/0/5:0
xe-0/0/5:2
xe-0/0/5:3
xe-0/0/6:1
xe-0/0/6:0
xe-0/0/6:3
xe-0/0/6:2
xe-0/0/7:1
xe-0/0/7:0
xe-0/0/7:2
xe-0/0/7:3
xe-0/0/8:0
xe-0/0/8:1
xe-0/0/8:3
xe-0/0/8:2
xe-0/0/9:1
xe-0/0/9:0
xe-0/0/9:2
xe-0/0/9:3

1 Ответ

1 голос
/ 27 марта 2019

Вы сортируете списки строк, но хотите отсортировать их как списки целых чисел.

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