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!