natural sorting
0 - 1 - 9 - a - z 순서의 기계적인 소팅이외에 사람이 이해하는 소팅을 구현할 필요가 있어서, 구글링을 좀 해봤더니, 이미 많은 사람이 구현해 놓은 좋은 snnipet이 있었다. 정규식 모듈 임포트 없이 구현한게 짱인듯... 이해는 안 된다. 왜 이런 결과가 나오는지... -_- def naturalsort(string): '''A natural sort helper function for sort() and sorted() without using regular expression. ''' r = [] for c in string: if c.isdigit(): if r and isinstance(r[-1], int): r[-1] = r[-1] * 10 + int(c) else: r.appen..
Python
2012. 5. 9. 11:15