title: randomly partition list without duplicates
body: <p>I've got an array that contains each of a set of numbers <code>n</code> times. Example with <code>n=2</code>:</p>
  
  <pre><code>[0, 1, 2, 3, 4, 0, 1, 2, 3, 4]
  </code></pre>
  
  <p>What I would like is a partition of this array in which the members of the partition</p>
  
  <ul>
  <li>contain elements that are drawn randomly from the array</li>
  <li>contain no duplicates</li>
  <li>contain the same number of elements (up to rounding) <code>k</code></li>
  </ul>
  
  <p>Example output for <code>k=4</code>:</p>
  
  <pre><code>[[3,0,2,1], [0,1,4,2], [3,4]]
  </code></pre>
  
  <p>Invalid output for <code>k=4</code>:</p>
  
  <pre><code>[[3,0,2,2], [3,1,4,0], [1,4]]
  </code></pre>
  
  <p>(this is a partition but the first element of the partition contains duplicates)</p>
  
  <p>What's the most pythonic way of achieving this?</p>