<p>看看这个:</p>
<pre><code>fc = '0x'
for i in b[0x15c:0x15f]:
fc += hex(ord(i))[2:]
</code></pre>
<p>假设这段代码找到了hex0040f,而不是那样写,它删除了第一个0,然后写:04f
有什么帮助吗?</p>
<pre><code>print ["0x%02x"%ord(i) for i in b[0x15c:0x15f]]
</code></pre>
<p>使用格式字符串<code>"%2x"</code>告诉它将其格式设置为2个字符宽,同样<code>"%02x"</code>告诉它用0填充</p>
<p>注意,这仍然会从大于2个十六进制值的对象中删除前导0
例如:<code>"0x%02x"%0x0055 => "0x55"</code></p>