
Natsort lets you apply natural sorting to your sequences easily, for example:
>>> from natsort import natsorted
>>> a = ['a2', 'a9', 'a1', 'a4', 'a10']
>>> data = [['a1', 'a5'], ['a1', 'a40'], ['a10', 'a1'], ['a2', 'a5']]
>>> natsorted(a)
['a1', 'a2', 'a4', 'a9', 'a10'
>>> natsorted(data)
[['a1', 'a5'], ['a1', 'a40'], ['a2', 'a5'], ['a10', 'a1']]
natsort identifies the numbers and sorts them separately from strings.
natsort comes with a shell script to use natural sorting in shell scripts. you can also execute natsort from the command line with python -m natsort.
there exists another natural sorting package for python called python-naturalsort. you may prefer that package if you wish to only sort version numbers.
this package contains api documentation and examples.