import re
def nautural_order_key(s, _split=re.compile(r'(\d+)').split, conv=int):
it = _split(s)
it[1::2] = map(conv, it[1::2])
return it
x = ['hoge99', 'hoge100', 'hoge10']
x.sort(key= nautural_order_key)
print(x) # ['hoge10', 'hoge99', 'hoge100']
More than 5 years have passed since last update.
Register as a new user and use Qiita more conveniently
- You get articles that match your needs
- You can efficiently read back useful information
- You can use dark theme