Ich würde gerne über zwei Listen auf einmal iterieren, kann aber nicht herausfinden, wie. Die for-Schleife, die Ihnen erlaubt, mehrere Listen zu haben, fungiert als verschachtelte for-Schleifen und ich bin nicht so vertraut mit Enum
, aber vielleicht gibt es eine Lösung dort.Elixier, wie man über zwei Listen gleichzeitig iteriert, um eine neue Liste zu erzeugen?
Python hat zip(list_1,list_2)
und enumerate(list_1)
diese
In Tcl zu erreichen, ist es einfacher für mich:
% foreach var1 [list 1 3] var2 [list 2 4] {
puts "$var1 $var2"
}
1 2
3 4
Aber ich kann nicht herausfinden, wie es in Elixir zu tun.
Der Grund, warum ich es tun möchte, ist, weil ich eine Liste von Karten wie diese
[%{"a" => "1539", "b" => "300"},
%{"a" => "4095", "b" => "0"},
%{"a" => "5371", "b" => "0"},
%{"a" => "7524", "b" => "0"},
%{"a" => "8267", "b" => "27"}]
und ich habe eine Liste der Elemente, die gleiche Größe haben:
["a","b","c","d","e"]
und ich Ich möchte sie durch eine Schleife laufen lassen, um Elemente in der Karte zu ersetzen, wenn eines der Elemente in der Karte eine bestimmte Bedingung erfüllt (nicht 0):
[%{"a" => "a", "b" => "300"}, # notice the change in element "a"
%{"a" => "4095", "b" => "0"},
%{"a" => "5371", "b" => "0"},
%{"a" => "7524", "b" => "0"},
%{"a" => "e", "b" => "27"}] # notice the change in element "a"
Wie auch immer. Kann mir jemand helfen, aufzählbar zu sein oder wie man über zwei Listen in Elixier iteriert?
Haben Sie durch das sah [ 'Enum'] (https : //hexdocs.pm/elixir/Enum.html) oder ['List'] (https://hexdocs.pm/elixir/List.html) Dokumente? Beide haben eine Zip-Funktion. –