多くの場合、数値がドットで表される形式のデータが出現することがあります。 (.) は桁区切り文字として使用され、カンマ (,) は小数点として使用されます。このようなデータに対して数学的演算を実行するには、データを浮動小数点形式に変換する必要があります。この記事では、Python でこの変換を実現する方法について説明します。
Python のロケール モジュールは、プラットフォーム固有のローカリゼーション設定にアクセスするためのインターフェイスを提供します。デフォルトでは、Python は「C」ロケールを想定しており、ドットは千の位の区切り文字として認識されません。 Python にドットを区切り文字として認識させるには、ユーザーの優先設定に一致するようにロケールを設定します。
import locale locale.setlocale(locale.LC_ALL, '')
この呼び出しは、Python にユーザーの優先ロケール設定を使用するように指示します。これにより、通常はドットが千の位の区切り文字として認識されます。ここで、locale.atof を使用して文字列を float に変換できます。
locale.atof('123,456.789')
ユーザーの優先設定を使用する代わりに、特定のロケールを指定して、使用。たとえば、ピリオドが千の位の区切り文字として使用され、カンマが小数点として使用されるデンマーク語ロケールを使用するには、次のように使用します。
locale.setlocale(locale.LC_NUMERIC, 'en_DK.UTF-8')
ロケール設定の変更には副作用が生じる可能性があり、スレッドセーフではありません。スレッド環境で使用される可能性のある関数またはライブラリ内でロケールを設定することは避けてください。さらに、予期しない動作を避けるために、拡張モジュール (C モジュール) は setlocale を呼び出さないでください。
ローカリゼーション サービスを利用することで、Python はドットとカンマを含む文字列を浮動小数点数に変換でき、シームレスな変換が可能になります。ローカライズされた数値データ。ただし、上記の注意点を考慮し、ローカリゼーション サービスを適切に使用することが重要です。
以上がPython で千の位と小数点の区切りとしてドットとカンマを含む文字列を浮動小数点数に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。