通过套接字发送一些信息后,我有一个二进制对象,如下所示:

b"1:b'5Q\x19aw\x17\x8c\x98\x10\x1c\xe0O\x14\xd1x\xa1'"


我想做的是将:的第一部分作为字符串获取,将第二部分作为二进制获取。像这样:

'1'


和:

b'5Q\x19aw\x17\x8c\x98\x10\x1c\xe0O\x14\xd1x\xa1'


经过我所有的尝试,我最终还是选择了:

b"b'5Q\x19aw\x17\x8c\x98\x10\x1c\xe0O\x14\xd1x\xa1'"


要么:

"b'5Q\x19aw\x17\x8c\x98\x10\x1c\xe0O\x14\xd1x\xa1'"

最佳答案

只需在b':'上分割它,并相应地解码和修剪:

i, j = r.split(b':')
i = i.decode()  #  '1'
j = j[2:-1]


现在:

print(i)
# 1
print(j)
# b'5Q\x19aw\x17\x8c\x98\x10\x1c\xe0O\x14\xd1x\xa1'

10-07 15:08