Python 的 int() 函数可通过 base=16 将十六进制字符串(支持 0x 前缀及大小写字母)转为十进制整数,非法输入抛 ValueError,亦可批量转换或封装安全函数。

Python 的 int() 函数可以直接将十六进制字符串转换为十进制整数,只需指定 base=16 即可。 它支持带 0x 前缀和不带前缀的十六进制字符串,自动识别并处理大小写字母(a–f 或 A–F)。
基础用法:直接转换单个十六进制字符串
int() 的第二个参数 base 设为 16,就能把合法的十六进制表示转成十进制整数:
-
int("FF", 16)→ 返回255 -
int("1a", 16)→ 返回26(不区分大小写) -
int("0xFF", 16)→ 返回255(支持 0x 前缀) -
int("0XABCD", 16)→ 返回43981
常见错误与注意事项
传入非法字符或格式会触发 ValueError,需注意以下几点:
- 字符串不能含空格、中文、字母以外的符号(如
"A B"或"G1"报错) - 空字符串
""或只有前缀如"0x"会报错 - 前缀
0x不是必须的,但若写了就必须小写 x(0X也支持;0h或0H不行) - 负号需放在最前面,如
"-FF"→-255,但"0x-FF"是非法的
批量转换与实用封装
处理多个值时,可结合列表推导式或封装成函数提升可读性:
立即学习“Python免费学习笔记(深入)”;
标签: python
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~