scripting:reference:standard_library:base:unpack
unpack
unpack (_Table)
Gibt für ein numerisches Table _Table alle Werte (einzeln) zurück.
Parameter
| Name | Typ | Beschreibung |
|---|---|---|
| _Table | Table | Ein numerisches Table |
Rückgabewerte
| Name | Typ | Beschreibung |
|---|---|---|
| Wert1 | - | Erster Wert im Table _Table (also _Table[1]) |
| Wert2 | - | Zweiter Wert im Table _Table (also _Table[2]) |
| … | ||
| Wertn | - | Letzter Wert im Table _Table (also _Table[table.getn(_Table)]) |
Beispiel
Wie andere Funktionen mit mehreren Rückgabewerten auch können mit unpack einzelne Variablen beschrieben werden. Dazu ist es allerdings notwendig, die Größe des Tables schon im Voraus zu kennen.
Numbers = {47, 11} Number1, Number2 = unpack(Numbers) print(Number1) -- 47 print(Number2) -- 11
unpack gibt nur den numerischen Anteil vom Eingabetable _Table zurück:
Position = { X = 13, Y = 37, 47, 11 } Number1, Number2 = table.unpack(Position) print(Number1) -- 47 print(Number2) -- 11
unpack wird oft dafür verwendet, Parameter an Funktionen zu übergeben, die zuvor in einem Table gespeichert wurden. Im Beispiel wurden die obere und untere Grenze für eine Zufallszahl in einem Table gespeichert. „Ausgepackt“ können sie für math.random verwendet werden:
-- Liefert eine Zufallszahl zwischen 5 und 42 RandomNumberBounds = {5, 24} RandomNumber = math.random(unpack(RandomNumberBounds))
Verwendete Funktionen:
scripting/reference/standard_library/base/unpack.txt · Zuletzt geändert: 2024/05/13 08:00 von fritz_98
