wie in der Python-Liste (Countdown) durchlaufen wird

7

Wie läuft es in der Python-Liste?

zum Beispiel

Schleife:

%Vor%

loop down:

%Vor%

danke

    
nguyên 08.07.2011, 04:52
quelle

4 Antworten

6

Eine andere Lösung:

%Vor%     
Jacob 08.07.2011, 04:57
quelle
16

Batterien enthalten.

%Vor%

Das Schneiden der Liste ( ls[::-1] ) eignet sich hervorragend zum Erstellen einer umgekehrten Kopie, aber auf meinem Computer ist es langsamer für die Iteration, selbst wenn die Liste bereits im Speicher ist:

%Vor%

Wie oft in Fällen wie diesen ist der Unterschied ziemlich vernachlässigbar. Es könnte für verschiedene Versionen von Python anders sein (Ich habe Python 2.7 für den obigen Test verwendet). Der wirkliche Vorteil der Verwendung von reversed ist Lesbarkeit - es wäre in den meisten Fällen vorzuziehen, auch wenn es ein paar zusätzliche Mikrosekunden kostet.

    
senderle 08.07.2011 04:53
quelle
7

Kehren Sie die Sequenz um.

%Vor%     
Ignacio Vazquez-Abrams 08.07.2011 04:54
quelle
3

Ich weiß, dass dieser Thread jetzt Jahre alt ist, aber ein Kommentar unter der akzeptierten Antwort enthält die Behauptung, dass die Verwendung von [::-1] schneller ist als die Verwendung von reversed() . Dies ist nur dann der Fall, wenn Ihre Liste explizit in den Speicher geladen wird, was beim Countdown nicht erforderlich ist. Sonst ist es langsamer:

%Vor%

... und [::-1] verwenden mehr Speicherplatz als reversed .

    
rhombidodecahedron 25.01.2014 10:09
quelle

Tags und Links