python中,怎么样把特定的字符串转为二进制序列?

我需要用socket发送特定的二进制序列,
所以我需要一个函数,已知特定的字符串,求字符串经过编码后的二进制字节流,是特定的字节流
例如input_str=‘a16203'
要求output_bytes=b'\xa1\x62\x03'

第1个回答  推荐于2016-04-24
干嘛不用binascii
>>> import binascii
>>> dir(binascii)
['Error', 'Incomplete', '__doc__', '__name__', '__package__', 'a2b_base64', 'a2b
_hex', 'a2b_hqx', 'a2b_qp', 'a2b_uu', 'b2a_base64', 'b2a_hex', 'b2a_hqx', 'b2a_q
p', 'b2a_uu', 'crc32', 'crc_hqx', 'hexlify', 'rlecode_hqx', 'rledecode_hqx', 'un
hexlify']
>>> binascii.a2b_hex("a16203")
'\xa1b\x03'
>>>追答

那个b不就是0x62吗?

本回答被提问者和网友采纳
第2个回答  2014-09-10
input_str = 'a16203'
out = []
for i in range(0,len(input_str),2):
    x = r'\x'+input_str[i:i+2]
    out.append(x)
output_str = ''.join(out)
print output_str

如果我没看错规律的话应该没有编码。。。上面完全就是字符串的处理。

python中,怎么样把特定的字符串转为二进制序列?
只是要在字符串的基础上每隔2个字符加个间隔符号吗?string = "3e210925041f000000a0010112008289125ba0000000"temp_list = []for index,item in enumerate(list(string)): temp_list.append(item.upper()) if (index+1)%2 == 0: temp_list.append(" ") print(''.join(temp_l...

python中,怎么样把特定的字符串转为二进制序列?
>>> import binascii >>> dir(binascii)['Error', 'Incomplete', '__doc__', '__name__', '__package__', 'a2b_base64', 'a2b _hex', 'a2b_hqx', 'a2b_qp', 'a2b_uu', 'b2a_base64', 'b2a_hex', 'b2a_hqx', 'b2a_q p', 'b2a_uu', 'crc32', 'crc_hqx', 'he...

python项目如何将数据转化为二进制?
使用Python的内置模块`struct`可以方便地将数据转换为二进制格式。通过`struct.pack()`方法,可以将各种数据类型封装为二进制字符串。例如,将整数和字符串转换为二进制如下:整数与字符串数据转换步骤包括:1. 确定数据类型与格式代码:整数类型由`i`表示,字符串长度由`s`表示,如`12s`表示长度为12的...

python怎么将字符串转化为八位二进制
1,将一个字符串转换为字符。这里采用了迭代器__iter__()内置函数,即可实现这个方法 2,将每一个字符转换为十进制,再转化为二进制。bin()函数只能将一个十进制函数转换为二进制,ord()函数可以将一个字符转换为十进制(实质就是这个字符的unicode编号),如此就实现了不同计数方法之间的转化 ...

Python encode()和decode()方法:字符串编码转换
在Python中,encode()和decode()是两个关键的字符串编码转换工具。它们分别用于将str(Unicode字符)转换为bytes(二进制数据)和反之,这一过程我们称为编码和解码。Python默认使用UTF-8编码,它能有效地处理中文字符,避免乱码问题。encode()方法是str类型到bytes类型转换的桥梁,其基本语法为str.encode(...

Python如何将变量转换为二进制的?
首先你可以自己写函数采用%2的方式来算.但是python自带了方法 bin.比如bin(12345)回返回字符串'0b11000000111001'这个时候在把0b去掉即可.bin(number).replace('0b','')

python中的进制转换
首先,我们探讨十进制转二进制。这可以通过直接使用Python内置函数实现。十转八进制的转换,通过同样使用Python的内置函数完成。例如,将数字9转换为八进制。十进制到十六进制的转换,使用类似的方法,能够将任意十进制数值转换为十六进制表示。接下来,字符串转字节类型的操作,主要是将文本字符串转换为字节...

python怎么把01字符串转为二进制bytes串?
一个例子:a="01110"a=bytes(map(int,a))print(a)运行截图:代码和结果的截图

python整数转化为二进制
5)'101'>>> 2、采用 python 自带了方法 bin 函数,比如 bin(12345) 回返回字符串 '0b11000000111001', 这个时候在把0b去掉即可:>>> bin(12345).replace('0b','')'11000000111001'3、也可以采用字符串的 format 方法来获取二进制:>>> "{0:b}".format(12345)'11000000111001'>>> ...

Python字节转换为字符串 - 如何将字符串转换为字节,以及反向转换
首先,理解Python中的字节表示:字节对象通过在字符前加上'b'前缀创建,如b'Hello',这表示一组字符作为二进制数据。转换过程如下:将字符串转换为字节使用encode()方法,如string_data = "Hello".encode('utf-8'),将字符串编码成字节,如byte_data = b'72 101 108 108 111'。将字节转换为字符...

相似回答