title: How to split a list into a given number of sub-lists in python
body: <blockquote>
    <p><strong>Possible Duplicates:</strong><br>
    <a href="https://stackoverflow.com/questions/2130016/splitting-a-list-of-arbitrary-size-into-only-roughly-n-equal-parts">splitting a list of arbitrary size into only roughly N-equal parts</a><br>
    <a href="https://stackoverflow.com/questions/312443/how-do-you-split-a-list-into-evenly-sized-chunks-in-python">How do you split a list into evenly sized chunks in Python?</a>  </p>
  </blockquote>
  
  
  
  <p>I need to create a function that will split a list into a list of list, each containing an equal number of items (or as equal as possible).</p>
  
  <p>e.g.</p>
  
  <pre><code>def split_lists(mainlist, splitcount):
      ....
  
  
  mylist = [1,2,3,4,5,6]
  </code></pre>
  
  <p><code>split_list(mylist,2)</code> will return a list of two lists of three elements - <code>[[1,2,3][4,5,6]]</code>.</p>
  
  <p><code>split_list(mylist,3)</code> will return a list of three lists of two elements.</p>
  
  <p><code>split_list(mylist,4)</code> will return a list of two lists of two elements and two lists of one element.</p>
  
  <p>I don't care which elements appear in which list, just that the list is divided up as evenly as possible.</p>