首頁 > 後端開發 > Python教學 > 如何在 Python 中對字串進行排序:就地、副本、區域設定感知和自訂區域設定?

如何在 Python 中對字串進行排序:就地、副本、區域設定感知和自訂區域設定?

DDD
發布: 2024-11-10 17:26:03
原創
1041 人瀏覽過

How to Sort Strings in Python: In-Place,  Copies, Locale-Aware, and Custom Locales?

在 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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板