我试图让python将十六进制字符串打印到屏幕上,而不是将其转换为ascii字符.
>>> x=b'\x5e\x2e\x6d' >>> x '^.m'
有没有办法将其打印到屏幕'\x5e\x2e\x6d'
而不是'^.m'
任何帮助将不胜感激.
b'\x5e\x2e\x6d'
并且b'^.m'
就Python而言是完全相同的.但是,您可以按照以下方式格式化它:
>>> x = b'\x5e\x2e\x6d' >>> print(''.join(map(r'\x{:x}'.format, bytearray(x)))) \x5e\x2e\x6d
或者在Python3中
>>> print(''.join([r'\x{:x}'.format(c) for c in x])) \x5e\x2e\x6d
或者在Python2中
>>> print(''.join([r'\x{:x}'.format(ord(c)) for c in x])) \x5e\x2e\x6d