Python 内建函数列表 > Python 的内置函数 hex
Python 的内置函数 hex() 用于将一个整数转换为以 “0x” 为前缀的小写十六进制字符串。该函数接受一个整数作为参数,并返回对应的十六进制字符串表示。
详细说明
- 函数语法:
1hex(x)
x:必须是一个整数对象(可以是 Python 的int类型,或者实现了__index__()方法的自定义对象)
- 返回值:
- 返回字符串类型,格式为
"0x"开头,后面跟随十六进制数字(a-f 使用小写字母) - 例如:
hex(255)返回'0xff'
- 返回字符串类型,格式为
- 参数要求:
- 如果传入非整数对象(如浮点数),会抛出
TypeError异常 - 对于负数,返回其补码形式的十六进制表示
- 如果传入非整数对象(如浮点数),会抛出
- 示例用法:
1print(hex(16)) # 输出:0x10 2print(hex(-10)) # 输出:-0xa 3print(hex(0)) # 输出:0x0 4# 自定义类使用 __index__ 方法 5class MyNumber: 6 def __index__(self): 7 return 100 8print(hex(MyNumber())) # 输出:0x64
- 应用场景:
- 内存地址显示
- 颜色代码转换(RGB 转十六进制)
- 低级编程和硬件相关操作
- 数据校验和哈希值展示
- 注意事项:
- 若要转换为大写十六进制,可以结合
upper()方法:hex(255).upper() - 与
int()函数配合可以实现十六进制字符串和整数之间的相互转换 - 从 Python 3.8 开始,
int类型也提供了hex()方法:(255).hex()
- 若要转换为大写十六进制,可以结合
- 底层实现:
- 实际调用的是该对象的
__hex__()方法(如果存在) - 对于
int类型,会直接返回其十六进制字符串表示
- 实际调用的是该对象的
- 相关函数:
bin():转换为二进制字符串oct():转换为八进制字符串format():提供更灵活的格式化选项(如format(255, "#04x"))
这个函数在处理需要十六进制表示的场合非常有用,特别是与底层系统交互或需要展示内存数据时。
《Python 的内置函数 hex》 是转载文章,点击查看原文。