title: Splitting a list of tuples to several lists by the same tuple items
body: <p>I am presented with a list made entirely of tuples, such as:</p>
  
  <pre><code>lst = [("hello", "Blue"), ("hi", "Red"), ("hey", "Blue"), ("yo", "Green")]
  </code></pre>
  
  <p>How can I split <code>lst</code> into as many lists as there are colours? In this case, 3 lists</p>
  
  <pre><code>[("hello", "Blue"), ("hey", "Blue")]
  [("hi", "Red")]
  [("yo", "Green")]
  </code></pre>
  
  <p>I just need to be able to work with these lists later, so I don't want to just output them to screen. </p>
  
  <p><strong>Details about the list</strong></p>
  
  <p>I know that every element of <code>lst</code> is strictly a double-element tuple. The colour is also always going to be that second element of each tuple.</p>
  
  <p><strong>The problem</strong></p>
  
  <p>Problem is,<code>lst</code> is dependant on user input, so I won't always know how many colours there are in total and what they are. That is why I couldn't predefine variables to store these lists in them. </p>
  
  <p>So how can this be done?</p>