Sto cercando di ottenere l'elenco delle tuple a tre elementi dall'elenco [-4, -2, 1, 2, 5, 0]
utilizzando le comprensibilità e controllando se soddisfano la condizione sum([] == 0)
. Il seguente codice funziona. Tuttavia, non c'è dubbio che ci dovrebbe essere un più facile, modo molto più elegante di esprimere queste comprensioni:Comprensioni in Python per campionare le tuple da un elenco
[
(i, j, k) for i in [-4, -2, 1, 2, 5, 0]
for j in [-4, -2, 1, 2, 5, 0]
for k in [-4, -2, 1, 2, 5, 0] if sum([i, j, k]) == 0
]
uscita:
[(-4, 2, 2), (-2, 1, 1), (-2, 2, 0), (-2, 0, 2), (1, -2, 1),
(1, 1, -2), (2, -4, 2), (2, -2, 0), (2, 2, -4), (2, 0, -2),
(0, -2, 2), (0, 2, -2), (0, 0, 0)]
La domanda è alla ricerca di un'espressione come (i, j, k) for i, j, k in [-4, -2, 1, 2, 5, 0]
.
Viene repeted permesso? – Arman