Comment éviter d'interroger l'objet sol
inutilement dans cette liste de compréhension? Actuellement, je l'interroge deux fois pour chaque objet, une fois dans le ternaire et une fois dans le prédicat. Cependant, je ne peux pas penser à une solution plus élégante. Est-ce qu'il y a un?Éviter la redondance dans cette compréhension de liste
dnf = (
(
(
d if p[i,d,True] in sol
else
-d if p[i,d,False] in sol
)
for d in range(N)
if p[i,d,True] in sol or p[i,d,False] in sol
)
for i in range(M)
)
Pouvez-vous nous montrer sol? – MishaVacic
@MishaVacic 'sol' est un ensemble arbitraire d'entiers. 'p' est un dictionnaire arbitraire à valeurs entières. –
Avez-vous essayé de dérouler votre générateur et de le regarder de cette façon? – wwii