def natsort(l, key=None, reverse=False):
return sorted(l, key=lambda v: NaturalOrderKey(key and key(v) or v), reverse=reverse)<EOL>
Sort the given list in the way that humans expect (using natural order sorting).

:param l: An iterable of strings to sort.
:param key: An optional sort key similar to the one accepted by Python's
            built in :func:`sorted()` function. Expected to produce
            strings.
:param reverse: Whether to reverse the resulting sorted list.
:returns: A sorted list of strings.