Вот еще одна реализация, после нескольких тестов она кажется быстрее, чем ответ Криса для более крупных списков. Он был протестирован с использованием стандартного Racket:
(define (powerset aL)
(if (empty? aL)
'(())
(let ((rst (powerset (rest aL))))
(append (map (lambda (x) (cons (first aL) x))
rst)
rst))))
В вашем случае connection
- это список словарей,
, поэтому используйте item.connection_name
и item.connection_ip
в своем задании.
Взгляните на официальный документ по циклам playbook
.