在 Python 中對字串清單進行排序
程式設計中的常見任務之一是對文字資料進行排序。在 Python 中,可以使用各種技術來實現字串清單的排序。
基本排序
最簡單的方法是對列表本身使用 sort() 方法。這會就地對列表進行排序,並修改原始順序。
mylist = ["b", "C", "A"] mylist.sort()
排序副本
如果您想建立清單的排序副本而不修改原來,請使用sorted()函數。
for x in sorted(mylist): print(x)
區域設定敏感排序
預設情況下,Python 執行區分大小寫、僅 ASCII 的排序。若要考慮特定於區域設定的規則,請將 key 參數與 functools 中的 cmp_to_key() 幫助器結合使用。
import locale from functools import cmp_to_key sorted(mylist, key=cmp_to_key(locale.strcoll))
自訂區域設定排序
您可以指定自訂區域設定以進行排序。例如,要根據UTF-8 編碼的英文規則進行排序:
import locale locale.setlocale(locale.LC_ALL, 'en_US.UTF-8') # ...
不區分大小寫的排序
避免使用lower() 等方法來區分大小寫-不敏感排序,因為它們僅適用於ASCII 字元。相反,請使用 strcoll() 等工具進行區域設定敏感排序。
不正確的不區分大小寫排序
# Incorrect because it uses lower(), which is limited to ASCII mylist.sort(key=lambda x: x.lower())
以上是如何在 Python 中對字串列表進行排序:綜合指南的詳細內容。更多資訊請關注PHP中文網其他相關文章!