ホームページ > バックエンド開発 > Python チュートリアル > Python で文字列を並べ替える方法: インプレース、コピー、ロケール対応、カスタム ロケール?

Python で文字列を並べ替える方法: インプレース、コピー、ロケール対応、カスタム ロケール?

DDD
リリース: 2024-11-10 17:26:03
オリジナル
1046 人が閲覧しました

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

Python での文字列のリストの並べ替え

プログラミングにおける一般的なタスクの 1 つは、文字列のリストを並べ替えることです。 Python では、これを実現する方法がいくつかありますが、それぞれに独自のメリットと注意点があります。

インプレース並べ替え

最も簡単なアプローチは、sort( ) メソッドをリストに直接追加します。これにより、元のリストが変更され、その要素がその場でアルファベット順に並べ替えられます。ただし、この方法は、リストの元の順序を保持したい場合には理想的ではありません。

mylist = ["b", "C", "A"]
mylist.sort()
ログイン後にコピー

並べ替えられたコピーの作成

リストの並べ替えられたコピーを取得するには元のリストを変更せずにリストを作成するには、sorted() を使用します。 function:

for x in sorted(mylist):
    print(x)
ログイン後にコピー

ロケールを意識した並べ替え

上記の並べ替え方法は、大文字と小文字を区別し、ロケールを意識しない並べ替えを実行します。ロケール固有のルールを考慮するには、sort() 関数またはsorted() 関数の 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 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート