Classificação rápida em Python

Uma implementação rápida de qsort em python:

def qsort(a):
if not a:
return []
first
= a[0]
lesser
= filter(lambda i: i < first, a[1:])
greater
= filter(lambda i: i >= first, a[1:])
return qsort(lesser) + [first] + qsort(greater)