Python 中的自然字串排序
在Python 中,使用預設的Sorted() 函數以字母順序對字串清單進行排序可能不會產生所需的結果“自然”秩序。這是因為sorted() 將字串視為單一字符,導致排序不自然。
例如,考慮以下字串清單:
使用sorted()對此列表進行排序產生以下結果:
這不是自然排序順序,因為字母後面的數字是按字母順序排列的,而不是被視為序列的一部分number.
要實現自然字串排序,您可以使用natsort 函式庫。 Natsort 提供了以更直觀的方式對字串進行排序的函數,保留了數字的自然排序。
您可以使用pip 安裝natsort:
對給定的內容執行自然排序列表,使用natsorted() 函數:
這將產生所需的自然排序order:
natsort_keygen()函數也可用於建立排序鍵:
這將以與 natsorted() 相同的方式對清單進行排序。
除了 natsorted() 和 natsort_keygen() 之外,natsort 還提供os_sorted() 和 os_sort_keygen() 函數。這些函數可讓您根據作業系統檔案資源管理器的排序行為對清單進行排序,這可能與 natsort 的預設行為不同。
以上是如何在Python中實現自然字串排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!