Skip to main content
 首页 » 编程设计

python之从图像中读取十六进制数据时出现问题之python 自动转换为字符串

2025年05月04日28think

我正在使用 read(1) 一次读取一个字节的图像,并将其附加到列表中。图像数据都是十六进制数据。当我使用 print 函数打印列表时,它的格式为 '\xd7'

['\xd7', '\xd7', '\xd7', '\xd7', '\xd7', '\xd7', '\xd7',...] 

问题是现在我需要对这个十六进制数据执行一些计算,但是,它是字符串格式,并且 python 中的任何 int 或十六进制转换函数都不支持这种 '\xd' 字符串格式.它们需要一个 '0xd7' 或只需要一个 'd7'。

感谢帮助

请您参考如下方法:

它将它们解释为字符,因此使用 ord 将它们转换为数字。 IE。 ord('\xd7') 给出 215。

此外,如果您使用 Windows,或者程序可能必须在 Windows 上运行,请确保您已以二进制模式打开文件:open("imagefile.png","rb")。在其他操作系统上没有区别。