Elegante Art, Tupelarithmetik durchzuführen

Was ist die elegante und präzise Art und Weise (ohne meine eigene Klasse mit operator overloading), um Tupel Arithmetik in Python 2.7?

Können sagen, ich habe zwei Tupel:

a = (10, 10)
b = (4, 4)

Meine angestrebte Ergebnis ist

c = a - b = (6, 6)

Derzeit benutze ich:

c = (a[0] - b[0], a[1] - b[1])

Ich auch versucht:

c = tuple([(i - j) for i in a for j in b])

aber das Ergebnis war (6, 6, 6, 6). Ich glaube, die oben genannten arbeiten, wie eine verschachtelte for-Schleifen, resultierend in 4 Iterationen und 4 Werte in das Ergebnis.

InformationsquelleAutor der Frage | 2013-07-02

Schreibe einen Kommentar