ホームページ >バックエンド開発 >Python チュートリアル >Python で千の位の区切り文字を含む文字列を数値に効率的に変換するにはどうすればよいですか?

Python で千の位の区切り文字を含む文字列を数値に効率的に変換するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-04 06:20:12994ブラウズ

How Can I Efficiently Convert Strings with Thousands Separators to Numbers in Python?

Python で千の区切り文字を含む文字列を数値に変換する

千の区切り文字 (通常はカンマ) を含む数値を表す文字列を扱う場合、それらを変換するPython の int() 関数を使用して整数に変換すると、ValueError 例外が発生する可能性があります。単純にカンマを空の文字列に置き換えるのは効率が悪く、エラーが発生しやすくなります。

解決策:

Python のロケール モジュールは、より洗練されたソリューションを提供します。ロケールを「en_US.UTF-8」に設定し、整数の場合は locale.atoi() (浮動小数点の場合は locale.atof()) を使用することで、千の位の区切り文字としてカンマを含む文字列を数値に簡単に変換できます。

例:

import locale
locale.setlocale(locale.LC_ALL, 'en_US.UTF-8')
# Convert string with commas to integer
result_int = locale.atoi('1,000,000')  # Yields 1000000
# Convert string with commas to float
result_float = locale.atof('1,000,000.53')  # Yields 1000000.53

このメソッドは、準拠しながら正確な変換を保証します。ロケール固有の書式設定ルールに準拠します。ロケール データを操作することで、桁区切り記号を使用した数値表現をシームレスに処理できます。

以上がPython で千の位の区切り文字を含む文字列を数値に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。