Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich effizient Listen mit wiederholten Elementen ohne Listenverständnis erstellen?

Wie kann ich effizient Listen mit wiederholten Elementen ohne Listenverständnis erstellen?

Linda Hamilton
Linda HamiltonOriginal
2024-12-16 20:57:11950Durchsuche

How Can I Efficiently Create Lists with Repeated Elements Without List Comprehensions?

Effizientes Generieren von Listen mit einzelnen wiederholten Elementen

Angenommen, Sie müssen mehrere Listen erstellen, von denen jede ein bestimmtes Element enthält und unterschiedlich oft wiederholt wird mal. Wie können Sie dies erreichen, ohne für jede Liste Listenverständnisse anzuwenden?

Lösung mit Listenmultiplikation

Neben Listenverständnissen können Sie die Listen auch mit Listenmultiplikation erstellen. Wiederholen Sie einfach das Element e n-mal, um eine Liste der Länge n zu erhalten:

[e] * n

Zusätzliche Überlegungen

Beachten Sie, dass dieser Ansatz erstellt, wenn e eine leere Liste ist eine Liste mit n Verweisen auf dieselbe leere Liste, nicht n unabhängigen leeren Listen.

Leistung Tests

Erste Leistungstests können darauf hinweisen, dass die Wiederholungsfunktion schneller ist als die Listenmultiplikation. Dies ist jedoch irreführend, da die Wiederholung nicht tatsächlich eine Liste erstellt; Es erstellt ein Iterable, das bei Bedarf in eine Liste konvertiert werden kann.

Beim Vergleich der tatsächlichen Erstellung von Listen ist die Listenmultiplikation deutlich schneller als die Konvertierung wiederholter Iterables in Listen. Daher wird zum Zweck der Listenerstellung empfohlen, die Listenmultiplikation zu verwenden:

[e] * n

Das obige ist der detaillierte Inhalt vonWie kann ich effizient Listen mit wiederholten Elementen ohne Listenverständnis erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn