>>> import os >>> l = ['/home/username/images/s1/4.jpg', '/home/username/images/s1/7.jpg', '/home/username/images/s1/6.jpg', '/home/username/images/s1/3.jpg', '/home/username/images/s1/5.jpg', '/home/username/images/s1/10.jpg', '/home/username/images/s1/9.jpg', '/home/username/images/s1/1.jpg', '/home/username/images/s1/2.jpg', '/home/username/images/s1/12.jpg', '/home/username/images/s1/11.jpg', '/home/username/images/s1/8.jpg'] >>> sorted(l, key=lambda i: int(os.path.splitext(os.path.basename(i))[0])) ['/home/username/images/s1/1.jpg', '/home/username/images/s1/2.jpg', '/home/username/images/s1/3.jpg', '/home/username/images/s1/4.jpg', '/home/username/images/s1/5.jpg', '/home/username/images/s1/6.jpg', '/home/username/images/s1/7.jpg', '/home/username/images/s1/8.jpg', '/home/username/images/s1/9.jpg', '/home/username/images/s1/10.jpg', '/home/username/images/s1/11.jpg', '/home/username/images/s1/12.jpg']