Skip to main content

Datenstrukturen

Listen

Wie in der Alltagssprache ist auch in ROBO Pro Coding eine Liste eine geordnete Sammlung von Elementen, wie z. B. eine "To-do"-Liste oder eine Einkaufsliste. Elemente in einer Liste können von beliebigem Typ sein, und derselbe Wert kann mehrmals in einer Liste erscheinen.

Erstellen einer Liste

erzeuge Liste mit

Mit dem Block erzeuge Liste mit kann man die Anfangswerte in einer neuen Liste angeben. In diesem Beispiel wird eine Liste von Wörtern erstellt und in einer Variablen namens Buchstaben abgelegt:

Bild1_d.PNG

Wir bezeichnen diese Liste als ["alpha", "beta", "gamma"].

Dies zeigt die Erstellung einer Liste von Zahlen:

Bild2_d.PNG

So wird eine Liste von Farben erstellt:

Bild3_d.PNG

Es ist weniger üblich, aber möglich, eine Liste mit Werten unterschiedlichen Typs zu erstellen:

Bild4_d.PNG

Anzahl der Eingänge ändern

Um die Anzahl der Eingänge zu ändern, klicke beziehungsweise tippe auf das Zahnradsymbol. Dadurch wird ein neues Fenster geöffnet. Du kannst Elementunterblöcke von der linken Seite des Fensters in den Listenblock auf der rechten Seite ziehen, um einen neuen Eingang hinzuzufügen.:

Während das neue Element in diesem Beispiel unten hinzugefügt wurde, kann es überall hinzugefügt werden. In ähnlicher Weise können unerwünschte Elementunterblöcke aus dem Listenblock nach links gezogen werden.

Liste mit Element erstellen

Mit dem Block erstelle Liste mit Element kannst du eine Liste erstellen, die die angegebene Anzahl von Kopien eines Elements enthält. Die folgenden Blöcke setzen zum Beispiel die Variable Wörter auf die Liste ["sehr", "sehr", "sehr"].

image-1623519726714.png

Prüfen der Länge einer Liste

ist leer

Der Wert eines ist leer-Blocks ist wahr, wenn seine Eingabe die leere Liste ist, und falsch, wenn es irgendetwas anderes ist. Ist diese Eingabe wahr? Der Wert des folgenden Blocks wäre falsch, weil die Variable Farben nicht leer ist: Sie hat drei Elemente.

image-1623519765930.png

Beachte die Ähnlichkeit mit dem ist leer-Block für Text.

Länge von

Der Wert des Länge von-Blocks ist die Anzahl der Elemente, die sich in der als Eingabe verwendeten Liste, befinden. Der Wert des folgenden Blocks wäre z. B. 3, da Farbe drei Elemente hat:

image-1623519787676.png

Beachte, dass der Länge von-Block angibt, wie viele Elemente in der Liste enthalten sind, und nicht, wie viele verschiedene Elemente in ihr enthalten sind. Zum Beispiel hat das Folgende den Wert 3, obwohl Wörter aus drei Kopien desselben Textes besteht:

image-1623519794441.png

Beachte die Ähnlichkeit mit dem Block Länge von für Text.

Suchen von Elementen in einer Liste

Diese Blöcke finden die Position eines Elements in einer Liste. Das folgende Beispiel hat den Wert 1, weil das erste Auftreten von "sehr" am Anfang der Wortliste steht (["sehr", "sehr", "sehr"]).

image-1623519818057.png

Das Ergebnis des Folgenden ist 3, weil das letzte Auftreten von "sehr" in Wörter an Position 3 ist.

image-1623519828317.png

Wenn das Element nirgendwo in der Liste vorkommt, ist das Ergebnis der Wert 0, wie in diesem Beispiel:

image-1623519839311.png

Diese Blöcke verhalten sich analog zu den Blöcken für das Finden von Buchstaben im Text.

Abrufen von Elementen aus einer Liste

Abrufen eines einzelnen Elements

Erinnere dich an die Definition der Liste Farben:

Bild3_d.PNG

Der folgende Block erhält die Farbe Blau, weil es das zweite Element in der Liste ist (von links beginnend gezählt):

image-1623519900407.png

Dieser erhält Grün, weil es das zweite Element ist (vom rechten Ende aus gezählt):

image-1623519907684.png

Dieser erhält das erste Element, Rot:

image-1623519914276.png

Dies erhält das letzte Element, Gelb:

image-1623519919954.png

Dies wählt zufällig ein Element aus der Liste aus, wobei mit gleicher Wahrscheinlichkeit eines der Elemente Rot, Blau, Grün oder Gelb zurückgegeben wird.

image-1623519928120.png

Abrufen und Entfernen eines Elements

Mit dem Dropdown-Menü wird der Block aus Liste ... abrufen in den Block aus Liste ... abrufen und entfernen geändert, der die gleiche Ausgabe liefert, aber auch die Liste verändert:

image-1623519937988.png

Dieses Beispiel setzt die Variable erster Buchstabe auf "alpha" und lässt die restlichen Buchstaben (["beta", "gamma"]) in der Liste.

Bild19_d.PNG

Entfernen eines Eintrags

Wenn du im Dropdown-Menü entfernen wählst, verschwindet die Nase links vom Block:

image-1623519978282.png

Damit wird das erste Element aus Buchstaben entfernt.

Eine Subliste abrufen

Der Block aus Liste ... Subliste abrufen ähnelt dem Block in aus Liste ... abrufen mit dem Unterschied, dass er eine Subliste extrahiert und nicht ein einzelnes Element. Es gibt mehrere Optionen, den Anfang und das Ende der Subliste anzugeben:

image-1623520006699.png

image-1623520012453.png

In diesem Beispiel wird eine neue Liste erster Buchstabe erstellt. Diese neue Liste hat zwei Elemente: ["alpha", "beta"].

Bild23_d.PNG

Beachte, dass dieser Block die ursprüngliche Liste nicht verändert.

Hinzufügen von Elementen an eine Liste

Elemente in einer Liste ersetzen

Der Block in Liste ... ersetze ersetzt das Element an einer bestimmten Stelle einer Liste durch ein anderes Element.

image-1623520033391.png

Die Bedeutung der einzelnen Dropdown-Optionen findest du im vorherigen Abschnitt.

Das folgende Beispiel bewirkt zwei Dinge:

  1. Die Liste Wörter wird mit 3 Elementen erstellt: ["sehr", "sehr", "sehr"].
  2. Das dritte Element in der Liste wird durch "gut" ersetzt. Der neue Wert von Wörter ist ["sehr", "sehr", "gut"]

image-1623520051581.png

Elemente an einer bestimmten Stelle in eine Liste einfügen

Der in Liste ... einfügen bei-Block wird über das Dropdown-Menü des in Liste ... ersetze-Blocks aufgerufen:

image-1623520061020.png

Er fügt ein neues Element an der angegebenen Stelle in die Liste ein, und zwar vor dem Element, das sich zuvor an dieser Stelle befand. Das folgende Beispiel (das auf einem früheren Beispiel aufbaut) tut drei Dinge:

  1. Die Liste Wörter wird mit 3 Elementen erstellt: ["sehr", "sehr", "sehr"].
  2. Das dritte Element in der Liste wird durch "gut" ersetzt. Der neue Wert von Wörter ist somit ["sehr", "sehr", "gut"].
  3. Das Wort "Sei" wird am Anfang der Liste eingefügt. Der endgültige Wert von Wörter ist somit ["Sei", "sehr", "sehr", "gut"].

image-1623520068498.png


Zeichenketten aufteilen und Listen zusammenfügen

Eine Liste aus einem Text erstellen

Der Baustein erstelle Liste aus Text zerlegt den angegebenen Text mithilfe eines Begrenzungszeichens in Teile:

image-1623520094323.png

Im obigen Beispiel wird eine neue Liste zurückgegeben, die drei Textstücke enthält: "311", "555" und "2368".

Ein Text aus einer Liste erstellen

Der Baustein erstelle Text aus Liste fügt eine Liste mithilfe eines Trennzeichens zu einem einzigen Text zusammen:

Bild29_d.PNG

Im obigen Beispiel wird ein neuer Text mit dem Wert zurückgegeben: "311-555-2368".

Eine Liste sortieren

Verwandte Blöcke

Drucken einer Liste

Der drucken-Baustein in der Kategorie Text kann Listen ausgeben. Das Ergebnis des folgenden Programms ist die abgebildete Konsolenausgabe:

Bild30_d.PNG

image-1623679163053.png

Etwas für jedes Element in einer Liste durchführen

Der für-jeden-Block in der Kategorie Steuerung führt eine Operation für jedes Element in einer Liste aus. Dieser Block druckt zum Beispiel jedes Element in der Liste einzeln aus:

Bild31_d.PNG

Dadurch werden die Elemente nicht aus der ursprünglichen Liste entfernt.

Map

Eine Map, auch bekannt als Dictionary oder Assoziatives Array, ist eine Sammlung von Schlüssel-Wert-Paaren, bei der jeder eindeutige Schlüssel direkt auf einen Wert verweist.

Alle Schlüssel einer Map zurückgeben

Der Block in der Map ... gib alle Schlüssel kann dazu verwendet werden, alle Schlüssel aus einer Map zurückzugeben.

In dem Beispiel holt der Block aus der Map map alle Schlüssel und gibt jeden in einer Schleife aus. Dies könnte genutzt werden, um zu sehen, welche Schlüssel überhaupt in der Map gespeichert sind:

image.png

Schlüssel eines Elements zurückgeben

Der Block in der Map ... gib Element des Schlüssel ... kann dazu verwendet werden, um den Wert eines bestimmten Schlüssels aus der Map zurückzugeben.

In dem Beispiel holt der Block, nachdem alle Schlüssel der Map map abgerufen wurden, für jeden Schlüssel den entsprechenden Wert. Dieser wird anschließend mit dem gib aus-Block ausgegeben. Dies demonstriert, wie man sequenziell durch eine Map iteriert und sowohl Schlüssel als auch Werte verarbeitet.

image.png

Element zu einer Map setzen

Der Block in der Map ... zum Schlüssel ... setze Element ... fügt einer Map ein neues Schlüssel-Wert-Paar hinzu oder aktualisiert den Wert eines bestehenden Schlüssels. Dies ist grundlegend für das Hinzufügen oder Modifizieren von Daten in einer Map.

Im Beispiel werden zwei Schlüssel-Wert-Paare in die Map map eingefügt:

  • ersterSchluessel erhält den Zeichenkettenwert erstesElement.
  • zweiterSchluessel erhält den Zeichenkettenwert zweitesElement.

Falls diese Schlüssel bereits in der Map existieren, werden ihre Werte mit den neuen Einträgen überschrieben. Andernfalls werden die Schlüssel und ihre zugehörigen Werte neu hinzugefügt. Es ist wichtig zu beachten, dass die Werte in einer Map nicht auf Zeichenketten beschränkt sind; sie können vielfältige Datentypen umfassen, einschließlich, aber nicht beschränkt auf, Zahlen, Listen oder sogar andere Maps.

image.png

JSON