在Python中将逗号分隔的字符串转换为数字
作为介绍,将逗号分隔的字符串解析为数值是在处理时经常遇到的来自各种来源的数据。但是,在 Python 中直接应用 int() 或 float() 函数可能会因字符串格式与预期的数字语法不匹配而导致错误。
解决方案
为了有效解决这个问题,Python 使用 locale 模块提供了一种更干净、更直观的方法。这种方法利用系统的区域设置来无缝处理逗号分隔的数字。
import locale # Set the locale to 'en_US' (English United States) locale.setlocale(locale.LC_ALL, 'en_US.UTF-8') # Convert a comma-separated string to an integer result_int = locale.atoi('1,000,000') # Returns 1000000 # Convert a comma-separated string to a float result_float = locale.atof('1,000,000.53') # Returns 1000000.53
在此代码中,将区域设置设置为“en_US”可确保 C 库函数 atoi() 和 atof() 解释逗号分隔的字符串正确地作为数字。生成的整数 (result_int) 和浮点数 (result_float) 现在可用于进一步处理,无需手动删除逗号。
以上是如何在 Python 中将逗号分隔的字符串转换为数字?的详细内容。更多信息请关注PHP中文网其他相关文章!