文字列を数値的に並べ替える
Python で数値文字を含む文字列のリストを並べ替えると、正しく処理されないと予期しない結果が生じる可能性があります。目的の並べ替え動作を実現するには、並べ替え関数を適用する前に文字列を数値に変換する必要があります。
ここに示した例では、ユーザーは文字列 "numbers" のリストを次のように変換して並べ替えようとしています。ループを使用して整数を計算します。ただし、これはループ内で文字列を整数に変換するだけであり、元の list1 は変更されません。
リストを数値的に正しく並べ替えるには、次の手順に従います。
list1 = ["1", "10", "3", "22", "23", "4", "2", "200"] list1 = [int(x) for x in list1]
list1.sort()
これにより、並べ替えられたリストが生成されます: ['1', '2', '3', '4', '10', '22', '23', '200'].
または、key 関数を使用して、数値に基づいてリストを並べ替えることもできます。各文字列を整数に変換せずに並べ替えます:
list1 = ["1", "10", "3", "22", "23", "4", "2", "200"] list1.sort(key=int)
これにより、前と同じ並べ替え順序になります。
以上がPython で文字列のリストを数値的に並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。