Python での文字列リストの並べ替え
プログラミングにおける一般的なタスクの 1 つは、テキスト データの並べ替えです。 Python では、さまざまな手法を使用して文字列のリストを並べ替えることができます。
基本的な並べ替え
最も簡単な方法は、リスト自体に対して sort() メソッドを使用することです。 。これにより、リストがその場で並べ替えられ、元の順序が変更されます。
mylist = ["b", "C", "A"] mylist.sort()
並べ替えられたコピー
リストを変更せずに並べ替えられたリストのコピーを作成したい場合は、オリジナルの場合は、sorted() 関数を使用します。
for x in sorted(mylist): print(x)
ロケールを区別する並べ替え
デフォルトでは、Python は大文字と小文字を区別する ASCII のみの並べ替えを実行します。ロケール固有のルールを考慮するには、functools の cmp_to_key() ヘルパーで 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 中国語 Web サイトの他の関連記事を参照してください。