如何正確對包含數字的字串進行排序
對包含數字的字串進行排序可能具有挑戰性。預設的 sort() 方法將每個字元視為自己的實體,從而導致排序不正確。為了正確地對這些字串進行排序,需要更複雜的方法。
一種有效的方法是人工排序,它利用正規表示式從字串中提取數字元件。此技術允許獨立於字母部分對數字進行排序。
要實現人工排序,請依照下列步驟操作:
範例:
import re def atoi(text): return int(text) if text.isdigit() else text def natural_keys(text): return [ atoi(c) for c in re.split(r'(\d+)', text) ] alist = [ "something1", "something12", "something17", "something2", "something25", "something29"] alist.sort(key=natural_keys) print(alist)
輸出:
['something1', 'something2', 'something12', 'something17', 'something25', 'something29']
輸出:
輸出:輸出:和數字部分的字串。以上是如何正確排序包含數字的字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!