Wie erhalte ich ein leeres array beliebiger Größe in python?
Ich im Grunde wollen Sie ein python-äquivalent in C:
int a[x];
aber in python habe ich ein array deklarieren, wie:
a = []
und das problem ist, ich will weisen Sie random slots mit Werten wie:
a[4] = 1
aber ich kann das nicht mit python, da das array leer ist.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie von "array" Sie eigentlich eine Python-Liste, die Sie verwenden können,
oder
a = [obj] * N
ist, dass die gleiche obj wird in jedem element des array. Wenn es ein veränderliches obj, und Sie ändern eine Sache, die alle geändert werden. ...Aber für dieses Beispiel unter Verwendung von integers (oder anderen unveränderlichen Typ), macht es keinen Unterschied. Oder, wenn Sie nur zuweisen, Elemente, es ist nicht ein problem. (Ich erwähne es, weil ich getan habe, genau das viel zu oft 🙂 )Können Sie nicht genau das tun, was Sie wollen in Python (wenn ich Sie richtig gelesen). Sie müssen Werte für jedes element der Liste (oder wie Sie es nannten, array).
Aber, versuchen Sie dies:
Liste der anderen Arten, etwas neben der 0.
None
ist oft eine gute Wahl als gut.range(N)
schon eine Liste, wenn Python < 3.0.xrange(N)
in Python 2.x. Ich bin mir nicht sicher, wie Sie es an der falschen, jedoch. Ich ziehe esa = range(N)
weil jedes element beginnt mit einem guten "Standard". Ich denke, es ist eine Frage der Stellungnahme.Können Sie numpy:
import numpy as np
Beispiel aus Leeres Array:
außerdem können Sie erweitern, dass mit extend-Methode der Liste.
Nur deklarieren Sie die Liste und fügen Sie jedes element. Für ex:
Wenn du (oder andere Suchmaschinen zu dieser Frage) waren wirklich daran interessiert, die Schaffung eines zusammenhängenden Arrays zu füllen, mit ganzen zahlen betrachten bytearray und memoryivew:
Wenn Sie wirklich wollen, ein C-Stil-array
Beachten Sie, dass es kein Konzept für un-initialisiert Variablen in python. Eine variable ist ein name, der verpflichtet ist, zu einem Wert, so dass der Wert etwas. Im obigen Beispiel wird das array initialisiert mit Nullen.
Dies ist jedoch selten in python, es sei denn, Sie wirklich brauchen es für low-level-Sachen. In den meisten Fällen werden Sie besser mit einer leeren Liste oder leer numpy-array, wie andere Antworten vorschlagen.