iteratively associate values to variables in C# like python does for (red, green, blue) in [2, 1, 3]
<p>think about the array [1, 2, 3] as one instance of his permutations.</p>

<p>In my code I need to associate this values to my variables so that I can refer them by name</p>

<p>I'm trying to obtain readable and simple code as Python version</p>

<p>In Python, if you have:</p>

<pre><code>permutation = [2, 1, 3]
</code></pre>

<p>you can do:</p>

<pre><code>for (red, green, blue) in permutation
for (a, b, c) in permutation
if b is red
</code></pre>

<p>...</p>

<p><strong>what I need to do is associate values in a particular permutation to variables in the exact same order: if I have [2, 1, 3] permutation and (red, green, blue) variables I want to happend 
red = 2
green =1
blue = 3</strong></p>

<p>I think in C# something like that can be accomplished by a Dictionary or an OrderedDictionary, maybe an ExtensionMethod with a meaningful name...
maybe something like colors["red"] == letters["a"] could be ok</p>

<p>I tryed  to sketch different implementations but I think I'm missing something
This is what I sketched:</p>

<pre><code>enum ColorsEnum
{
    red, green, blue
}

public static Dictionary&lt;string, int&gt; Valorize(IEnumerable&lt;string&gt; keys, IEnumerable&lt;int&gt; values)
    {
           ...
    }

public static Dictionary&lt;string, int&gt; AsColorDictionaryWithValues(this string[] keys, int[] values)
{
           ...
}

public static void Valorize(Dictionary&lt;string, int&gt; dic, IEnumerable&lt;int&gt; values)
{
    foreach (var item in Enum.GetNames(typeof(ColorsEnum)))
    {
        dic.Add(item, [incremental_number]);
    }
}
</code></pre>

<p>What do you think can be a good solution (I care about readability and simplicity)</p>
