[英]Python: Prevent decoding of bytearray while printing
以下代碼顯示打印字節數組使其盡可能解碼 ASCII 字符。
>>> a = bytearray([0x0D, 0x48, 0x69])
>>> print(a)
bytearray(b'\rHi')
有沒有一種簡單的方法可以防止字節解碼,而是產生這樣的結果?
bytearray(b'\x0d\x48\x69')
這是一個解決方案(但必須有一種更有機的方式來做到這一點)!
a = bytearray([0x0D, 0x48, 0x69])
打印(地圖(十六進制,一))
恐怕您必須手動構建它:
def dump(x):
return ''.join([type(x).__name__, "('",
*['\\x'+'{:02x}'.format(i) for i in x], "')"])
然后你可以這樣做:
>>> a = bytearray('\rHi', 'ascii')
>>> print(dump(a))
bytearray('\x0d\x48\x69')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.