5. 数据类型转换
用户通过 input() 输入的所有内容都是字符串类型,参与数值计算前必须转换:
| 函数 | 用途 | 示例 |
|---|---|---|
int(x) | 字符串 → 整数 | int("42") → 42 |
float(x) | 字符串 → 浮点数 | float("3.14") → 3.14 |
str(x) | 数字 → 字符串 | str(100) → "100" |
浮点数精度问题
在处理金额等精度敏感的计算时,应使用 decimal 模块代替 float:
python
from decimal import Decimal
# 普通 float 会有精度误差
# s = int(float(input()) * 100) # 可能因精度丢失出错
# 使用 Decimal 保证精确计算
s = int(Decimal(input("请输入金额:")) * 100)
print(f"转换为分:{s}")
📝 样例输入:
输入
100
▶ 运行结果:
输出
请输入金额:100
转换为分:10000