Python将字符串转换为数字的核心方法是使用int()
或float()
函数,适用于整数或浮点数类型转换,同时需处理异常输入(如非数字字符)。以下是具体实现与注意事项:
-
基础转换方法
int()
函数:将字符串转为整数,例如int("123")
输出123
。若字符串含小数点或非数字字符(如"12.3"
),会触发ValueError
。float()
函数:支持浮点数转换,如float("3.14")
得到3.14
,但字符串需符合数字格式,否则同样报错。
-
异常处理与健壮性
使用try-except
捕获异常,避免程序中断。例如:try: num = float(input("输入数字:")) except ValueError: print("输入无效,请重新输入!")
-
扩展场景与技巧
- 进制转换:
int("1010", 2)
可将二进制字符串"1010"
转为十进制整数10
。 - 去除空格:先调用
strip()
清理字符串空白符,如int(" 42 ".strip())
。
- 进制转换:
-
性能与替代方案
对大量数据转换,可考虑ast.literal_eval()
安全评估字符串,但需注意其仅支持合法Python字面量。
总结:根据需求选择int()
或float()
,结合异常处理确保代码鲁棒性。特殊场景可借助进制参数或预处理字符串提升灵活性。