在 Python 中對字串清單進行排序
程式設計中的常見任務之一是將字串清單排序。在 Python 中,有許多方法可以實現這一點,每種方法都有自己的優點和注意事項。
就地排序
最簡單的方法是使用 sort( )方法直接在列表中。這會修改原始列表,並按字母順序對元素進行排序。但是,如果您想保留清單的原始順序,這種方法並不理想。
mylist = ["b", "C", "A"] mylist.sort()
建立排序副本
取得清單的排序副本清單而不修改原始,使用sorted()函數:
for x in sorted(mylist): print(x)
區域設定感知排序
上述排序方法執行區分大小寫、不區分大小寫的操作。區域設定感知排序。為了考慮特定於語言環境的規則,您可以使用sort() 或排序() 函數的key 參數,以及functools 模組中的cmp_to_key() 輔助函數:
sorted(mylist, key=cmp_to_key(locale.strcoll))
這將排序根據當前語言環境設定的列表。
自訂語言環境
最後,如果您需要指定自訂語言環境進行排序,請使用setlocale() 函數區域設定模組:
import locale locale.setlocale(locale.LC_ALL, 'en_US.UTF-8') sorted((u'Ab', u'ad', u'aa'), key=cmp_to_key(locale.strcoll))
以上是如何在 Python 中對字串進行排序:就地、副本、區域設定感知和自訂區域設定?的詳細內容。更多資訊請關注PHP中文網其他相關文章!