【问题标题】:Convert string byte to byte like b'\x00\x01\x02'将字符串字节转换为字节,如 b'\x00\x01\x02'
【发布时间】:2021-05-16 04:53:17
【问题描述】:

我有一串这样的字节:

mystring = '000102'

我需要:

result = b'\x00\x01\x02'

现在我做到了:

# Opt 1
result = bytearray(mystring, 'utf-8') # I suppose is not correct encoded
# Opt 2
result  = mystring.encode()

两个都给我,b'000102'。如何获取定义每个字节的'\x'

非常感谢,我想这是一个简单的问题,但我找不到怎么做

【问题讨论】:

标签: python


【解决方案1】:

使用来自十六进制的字节method

mystring = '000102'
y = bytes.fromhex(mystring)
print(y)

输出:

b'\x00\x01\x02'

【讨论】:

    【解决方案2】:

    应该这样做:

    my_string = "012345"
    
    result = b""
    
    for i in range(len(my_string)//2):
        b += bytes(chr(int(my_string[i:i+1],16)),encoding="ASCII")
    

    【讨论】:

      猜你喜欢
      • 2022-01-08
      • 2018-07-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-26
      • 1970-01-01
      • 2014-04-29
      • 2019-12-12
      相关资源
      最近更新 更多