Wie deklariere ich Elemente und füge sie einem Array in Python hinzu?

386

Ich versuche, einem Array in Python Elemente hinzuzufügen.

ich renne

array = {}

Dann versuche ich, diesem Array etwas hinzuzufügen, indem ich Folgendes tue:

array.append(valueToBeInserted)

Dafür scheint es keine .appendMethode zu geben. Wie füge ich einem Array Elemente hinzu?

AkshaiShah
quelle

Antworten:

692

{}repräsentiert ein leeres Wörterbuch, kein Array / eine Liste. Für Listen oder Arrays benötigen Sie [].

So initialisieren Sie eine leere Liste:

my_list = []

oder

my_list = list()

Verwenden Sie zum Hinzufügen von Elementen zur Liste append

my_list.append(12)

Um extenddie Liste die Elemente aus einer anderen Liste aufzunehmen, verwenden Sieextend

my_list.extend([1,2,3,4])
my_list
--> [12,1,2,3,4]

Um ein Element aus einer Liste zu entfernen, verwenden Sie remove

my_list.remove(2)

Wörterbücher stellen eine Sammlung von Schlüssel / Wert-Paaren dar, die auch als assoziatives Array oder Map bezeichnet werden.

Um ein leeres Wörterbuch zu initialisieren, verwenden Sie {}oderdict()

Wörterbücher haben Schlüssel und Werte

my_dict = {'key':'value', 'another_key' : 0}

Um ein Wörterbuch um den Inhalt eines anderen Wörterbuchs zu erweitern, können Sie die updateMethode verwenden

my_dict.update({'third_key' : 1})

So entfernen Sie einen Wert aus einem Wörterbuch

del my_dict['key']
Lukecampbell
quelle
Oh ok, ich habe verstanden, dass eine Liste einen Schlüssel und einen Wert haben muss, aber ich denke nicht
AkshaiShah
38

Nein, wenn Sie dies tun:

array = {}

In Ihrem Beispiel verwenden Sie arrayals Wörterbuch, nicht als Array. Wenn Sie ein Array benötigen, verwenden Sie in Python Listen:

array = []

Fügen Sie dann folgende Elemente hinzu:

array.append('a')
Pablo Santa Cruz
quelle
1
Nitpicking: Sie erklären nichts. Sie geben einen Namen im aktuellen Bereich an, der auf ein Wörterbuch / Listenobjekt verweist.
16

Arrays ( listin Python aufgerufen ) verwenden die []Notation. {}ist für dict(in anderen Sprachen auch als Hash-Tabellen, zugehörige Arrays usw. bezeichnet), sodass Sie für ein Diktat kein "Anhängen" haben.

Wenn Sie tatsächlich ein Array (eine Liste) möchten, verwenden Sie:

array = []
array.append(valueToBeInserted)
Collin Green
quelle
11

Nur zur Vervollständigung können Sie dies auch tun:

array = []
array += [valueToBeInserted]

Wenn es sich um eine Liste von Zeichenfolgen handelt, funktioniert dies auch:

array += 'string'
Big McLargeHuge
quelle
2

In einigen Sprachen wie JAVA definieren Sie ein Array mit geschweiften Klammern wie folgt, aber in Python hat es eine andere Bedeutung:

Java:

int[] myIntArray = {1,2,3};
String[] myStringArray = {"a","b","c"};

In Python werden jedoch geschweifte Klammern verwendet, um Wörterbücher zu definieren, für die eine key:valueZuordnung erforderlich ist{'a':1, 'b':2}

Um ein Array (das in Python tatsächlich als Liste bezeichnet wird) zu definieren, haben Sie folgende Möglichkeiten:

Python:

mylist = [1,2,3]

oder andere Beispiele wie:

mylist = list()
mylist.append(1)
mylist.append(2)
mylist.append(3)
print(mylist)
>>> [1,2,3]
user1767754
quelle
2

Sie können auch:

array = numpy.append(array, value)

Beachten Sie, dass die numpy.append()Methode ein neues Objekt zurückgibt. Wenn Sie also Ihr ursprüngliches Array ändern möchten, müssen Sie Folgendes schreiben:array = ...

Aurelie Giraud
quelle
-1

Ich glaube, Sie sind alle falsch. Sie müssen tun:

array = array[] um es zu definieren, und dann:

array.append ["hello"] hinzufügen.

Eliza
quelle
4
Die richtige Art, ein Array zu definieren, istarray = []
Shai
1
Sie können es auch mit definieren array = list(). Beachten Sie, dass die Definition als Array mit [] bestimmte Funktionen bietet, die nur Arrays zur Verfügung stehen, z. B. die Array-Division durch eine einzelne Ganzzahl. Ex. array/3
Dalton Whyte
SyntaxError: ungültige Syntax
CodeGuru
Halten Sie sich