Ich arbeite durch einige Tutorial-Übungen lernen über Python-Verständnis. Ich bin auf einen gestoßen, der ein Verständnis aufstellen möchte, das ein 3-Tupel aller Zahlenkombinationen in einer gegebenen Menge zurückgibt, die auf Null summieren - ohne das triviale Beispiel von (0,0,0).Filtern von Python-Liste Comprehensions
kam ich mit auf den Punkt:
def tupleNonTrivialSumation(s):
'''return a 3-tuple of x,y,z : x+y+z=0 & the list does not contain (0,0,0)'''
return tuple([(x,y,z) for x in s for y in s for z in s if x+y+z==0 if abs(x)+abs(y)+abs(z)!=0])`
ist es eine prägnante Art und Weise, dies zu schreiben? es scheint, als ob es einen besseren Weg geben sollte zu überprüfen, ob x, y, z zu Null summieren.
'[... wenn Summe (sub) == 0 und sub! = (0, 0, 0)]'? Müssen Sie "das triviale Beispiel von (0,0,0)" nicht ausschließen? – Alexander
@Alexander Ja, sicher. – Kasramvd