Nun habe ich vector3 Werte, dargestellt als Listen. gibt es eine Möglichkeit, subtrahieren Sie 2 von diesen, wie vector3 Werte, wie
[2,2,2] - [1,1,1] = [1,1,1]
Sollte ich verwenden Tupel?
Wenn keiner von Ihnen definiert diesen Operanden, auf diese Art, kann ich es definieren, statt?
Wenn nicht, sollte ich einen neuen vector3-Klasse?
InformationsquelleAutor der Frage Joan Venge | 2009-02-10
Ist dies etwas, was Sie am Ende tut man Häufig und mit verschiedenen Operationen, sollten Sie wahrscheinlich erstellen Sie eine Klasse, um Fälle zu behandeln wie diese, oder besser, nutzen einige Bibliotheken wie Numpy.
Ansonsten suchen Liste Verstehens verwendet, mit der zip builtin-Funktion:
InformationsquelleAutor der Antwort UncleZeiv
Hier ist eine alternative, um die Liste Verstehens. Map iteriert über die Liste(N) (die letzteren Argumente), so simulataneously und übergibt die Elemente, die als Argumente an die Funktion (das erste argument). Es gibt die resultierende Liste.
Code weil weniger syntax (das ist mehr ästhetik für mich), und anscheinend ist Sie 40% schneller für Listen der Länge 5 (siehe bobince Kommentar). Immer noch, entweder-Lösung.
InformationsquelleAutor der Antwort Nikhil Chelliah
Wenn Ihr Listen a und b, die Sie tun können:
Aber sollten Sie wahrscheinlich nicht. Niemand wird wissen, was es bedeutet.
InformationsquelleAutor der Antwort recursive
Ich würde empfehlen NumPy sowie
Nicht nur wird es schneller tun, vector math, aber es hat auch eine Tonne von Komfort-Funktionen.
Wenn Sie etwas schneller sogar für 1d-Vektoren, versuchen vop
Es ist ähnlich wie MatLab, ist aber kostenlos und Zeug. Hier ein Beispiel von dem, was Sie tun würde,
Boom.
InformationsquelleAutor der Antwort mikelikespie
Check-out die NumPy - Paket für python.
InformationsquelleAutor der Antwort George
Wenn Sie zwei Listen genannt 'a' und 'b' können Sie tun:
[m - n for m,n in zip(a,b)]
InformationsquelleAutor der Antwort Andy Mikula
Einen etwas anderen Vector-Klasse.
InformationsquelleAutor der Antwort S.Lott
Wenn Sie planen, die Durchführung mehr als einfach Zwischenlagen, es wäre besser, setzen Sie Ihre eigene Klasse und überschreiben Sie die entsprechenden Operatoren, wie Sie Ihren Fall.
Entnommen Mathematik in Python:
InformationsquelleAutor der Antwort codelogic
InformationsquelleAutor der Antwort user3503711
Für die ein, die verwendet werden, um code auf Pycharm, es weckt auch die anderen.
InformationsquelleAutor der Antwort Sahil Nagpal
Wenn Sie möchten, dass das Ergebnis in der Liste :
wenn Sie nicht entfernen Liste.
InformationsquelleAutor der Antwort hamed
InformationsquelleAutor der Antwort ravi tanwar
Versuchen Sie dies:
InformationsquelleAutor der Antwort