对python以16进制打印字节数组的方法详解

PythonGCS 2019-01-24

一、问题描述

如果直接用print打印bytes的话,有时候会直接显示ascii对应的字符,看起来很蛋疼。

二、运行效果

对python以16进制打印字节数组的方法详解

上面一行是直接用print打印的结果,很明显,第一个字节0x7b就被转换成'{'了。

三、代码

那么,如何输入上图中最后一行的格式呢,很简单:

def print_hex(bytes):
  l = [hex(int(i)) for i in bytes]
  print(" ".join(l))

相关推荐