title: How to iterate over a dictionary of lists of different sizes
body: <p>Let's say I have a dictionary of lists. Example case:</p>
  <pre class="lang-py prettyprint-override"><code>{&quot;move1&quot;: [&quot;somedata1&quot;, &quot;somedata2&quot;, &quot;somedata3&quot;],
   &quot;move2&quot;: [&quot;somedata4&quot;, &quot;somedata5&quot;],
   &quot;move&quot;:  [&quot;somedata6&quot;]}
  </code></pre>
  <p>And when I iterate over it I want to have a result that looks like this:</p>
  <p>Iteration 1:</p>
  <pre class="lang-py prettyprint-override"><code>{&quot;move1&quot;: [&quot;somedata1&quot;],
   &quot;move2&quot;: [&quot;somedata4&quot;],
   &quot;move3&quot;: [&quot;somedata6&quot;]}
  </code></pre>
  <p>Iteration 2:</p>
  <pre class="lang-py prettyprint-override"><code>{&quot;move1&quot;: [&quot;somedata2&quot;],
   &quot;move2&quot;: [&quot;somedata5&quot;]}
  </code></pre>
  <p>Iteration 3:</p>
  <pre class="lang-py prettyprint-override"><code>{&quot;move1&quot;: [&quot;somedata3&quot;]}
  </code></pre>
  <p>How can I do that in a way that is both efficient and pretty easy to understand.</p>
  <p>Note that the <code>move</code> labels don't have to be removed, they can be empty lists in case that makes the solution easier.
  Example in iteration 3:</p>
  <pre class="lang-py prettyprint-override"><code>{&quot;move1&quot;: [&quot;somedata3&quot;]
   &quot;move2&quot;: [], 
   &quot;move3&quot;: []}
  </code></pre>