title: Python Quick Sort implementation misses out duplicate elements
body: <p>I am implementing Quick Sort in Python. My code succeeds in sorting the list, but fails to include the duplicate elements. Please help me find the bug.</p>
  
  <pre><code>from random import choice
  
  def quickSort(lst):
      if not lst:
          return []
      else:
          pivot = choice(lst)
          lesser = quickSort([l for l in lst if l &lt; pivot])
          greater = quickSort([l for l in lst if l &gt; pivot])
          #print lesser, pivot, greater
          return lesser + [pivot] + greater
  
  print quickSort([3, 2, 5, 6, 1, 7, 2, 4,234, 234, 23, 1234, 24, 132])
  </code></pre>
  
  <p><strong>Output:</strong></p>
  
  <pre><code>[1, 2, 3, 4, 5, 6, 7, 23, 24, 132, 234, 1234]
  </code></pre>