Python 的 int() 函数用于将指定值转换为整数,其核心行为如下:
- 基本转换规则
- 数字类型:浮点数直接截断小数部分
int(3.14) 返回 3 int(-2.7) 返回 -2 - 字符串:解析字符串为整数(默认十进制)
int("42") 返回 42 int("1010", 2) 二进制转换,返回 10 - 布尔值:
True→1,False→0int(True) 返回 1
- 进制转换参数
通过base参数支持 2~36 进制转换(0 表示自动推断前缀):
int("0xFF", 0) 十六进制 → 255
int("0o77", 0) 八进制 → 63
int("Z", 36) 三十六进制 → 35
- 异常场景
- 无效输入触发异常:
int("3.14") ❌ ValueError(字符串含小数点) int("abc") ❌ ValueError(非数字字符) - 进制超限触发异常:
int("12", 37) ❌ ValueError(base 超出 0 或 2~36 范围)
- 特殊规则
- 空字符串或仅含空格的字符串会触发
ValueError - 当
base=0时,按前缀自动识别进制(0x→十六进制,0o→八进制)
提示:对
float类型转换时直接截断小数(非四舍五入),复数需先转为实数再操作。