Vorbelegung einer Liste mit "Keine"

Angenommen, Sie möchten eine Funktion schreiben, die eine Liste von Objekten liefert, und Sie kennen die Länge im Vorausn von einer solchen Liste.

In Python unterstützt die Liste den indizierten Zugriff in O (1), daher ist es wahrscheinlich eine gute Idee, die Liste vorab zuzuweisen und mit Indizes darauf zuzugreifen, anstatt eine leere Liste zuzuweisen und die zu verwendenappend() Methode. Dies liegt daran, dass wir die Last vermeiden, die gesamte Liste zu erweitern, wenn der Platz nicht ausreicht.

Wenn ich Python verwende, sind Performances wahrscheinlich auf keinen Fall so relevant, aber wie kann man eine Liste besser vorbelegen?

Ich kenne diese möglichen Kandidaten:

[None] * n → zwei Listen zuordnen[None for x in range(n)] - oderxrange in python2 → ein anderes Objekt bauen

Ist einer deutlich besser als der andere?

Was ist, wenn wir in dem Fall sind?n = len(input)? Schon seitinput existiert bereits, würde[None for x in input] habe bessere leistungen w.r.t.[None] * len(input)?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage