python 按照自然數排序遍曆檔案 python os.listdir sort by natural sorting

來源:互聯網
上載者:User

標籤:strong   spl   https   pre   split   key   遍曆   png   div   

 

 

import osimport redef sorted_aphanumeric(data):    convert = lambda text: int(text) if text.isdigit() else text.lower()    alphanum_key = lambda key: [ convert(c) for c in re.split(‘([0-9]+)‘, key) ]     return sorted(data, key=alphanum_key)file = sorted_aphanumeric(os.listdir("./2"))for f in file:    print(f) 

 

參考

https://stackoverflow.com/questions/4813061/non-alphanumeric-list-order-from-os-listdir

Python for whatever reason does not come with a built-in way to have natural sorting (meaning 1, 2, 10 instead of 1, 10, 2), so you have to write it yourself:

import redef sorted_aphanumeric(data):    convert = lambda text: int(text) if text.isdigit() else text.lower()    alphanum_key = lambda key: [ convert(c) for c in re.split(‘([0-9]+)‘, key) ]     return sorted(data, key=alphanum_key)

You can now use this function to sort a list:

dirlist = sorted_aphanumeric(os.listdir(...))

python 按照自然數排序遍曆檔案 python os.listdir sort by natural sorting

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.