Python 从字符串中获取二进制数据

Python 从字符串中获取二进制数据,python,string,python-3.x,split,byte,Python,String,Python 3.x,Split,Byte,通过套接字发送一些信息后,我有一个二进制对象,如下所示: b"1:b'5Q\x19aw\x17\x8c\x98\x10\x1c\xe0O\x14\xd1x\xa1'" 我要做的是将:前面的第一部分作为字符串,第二部分作为二进制。像这样: '1' 以及: 在我所有的尝试中,我最终得到的结果是: b"b'5Q\x19aw\x17\x8c\x98\x10\x1c\xe0O\x14\xd1x\xa1'" 或: 只需在b':'上拆分它,并相应地解码和修剪: i, j = r.split(b':')

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

b"1:b'5Q\x19aw\x17\x8c\x98\x10\x1c\xe0O\x14\xd1x\xa1'"
我要做的是将:前面的第一部分作为字符串,第二部分作为二进制。像这样:

'1'
以及:

在我所有的尝试中,我最终得到的结果是:

b"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]
现在:


谢谢,很简单。实际上,我只是用j代替了j=j[2:-1]。否则我只能得到部分信息。
"b'5Q\x19aw\x17\x8c\x98\x10\x1c\xe0O\x14\xd1x\xa1'"
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'