Ich habe vor kurzem mit Python und Pygame gearbeitet, und ich frage mich, ist es effizienter, Prozessor/RAM weise if x != y: x = y
oder x = y
in meiner Hauptschleife zu verwenden ? Ich verstehe, dass der Unterschied so klein sein würde, dass es fast keinen Unterschied machen würde, aber ich bin immer noch neugierig.Python, das effizienter ist; Wenn x! = y: x = y oder x = y
-1
A
Antwort
0
x = y
erfordert keinen Vergleich, und ein Vergleich kann manchmal Ressource kosten.
So würde ich sagen, dass nur x = y
ist besser.
+0
Ja, aber der OP ist der Punkt, dass manchmal der Vergleich falsch ist und dann brauchen Sie keine Zuweisung. – jonrsharpe
+0
Ich sehe seinen Punkt, aber Vergleich, soweit ich weiß, ist (in Bezug auf Ressourcen) teurer als Zuweisung. –
Nicht sicher, was Sie hier bekommen ... die erste Anweisung hat 2 Komponenten, eine if-Anweisung und eine Zuweisung, die zweite Anweisung hat nur die gleiche Zuordnung. Wäre es also nicht sinnvoll, dass der zweite schneller ist? –
Nicht notwendig: Vergleiche nicht schneller als Zuordnungen? Dann, wenn "fast jedes Mal" x == y, dann wäre es wahrscheinlich schneller, zuerst zu überprüfen, nicht wahr? – Dleep