You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中hex字符串转整数列表后反向还原长度不符如何解决?

问题原因

反向转换的代码没有对输出的十六进制字符做补零对齐:当整数数值小于16时,format(i, 'x')只会输出1位十六进制字符(比如十进制的10会输出a而非0a),每出现一个这类数值,最终字符串长度就会少1位,这就是reversed_hex长度比原始值短的核心原因。

修复方案

把反向转换的格式符修改为02x即可,该格式符会强制每个整数输出2位十六进制字符,不足两位时左侧补前导零:

reversed_hex = ''.join([format(i, '02x') for i in list_of_ints])

补充说明

  • 如果原始十六进制字符串使用大写字符(比如FF而非ff),可以把格式符换成02X,就能完全匹配原始字符串的大小写格式。
  • 你原有代码里的int(i)是冗余操作,list_of_ints里的元素本身就已经是整数类型,无需额外转换。

内容的提问来源于stack exchange,提问作者figbar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 18:24:03