导航:首页 > 编程语言 > python获取字符串的二进制

python获取字符串的二进制

发布时间:2024-12-07 22:42:57

python整数转化为二进制

1、你可以自己写函数采用 %2 的方式来算。
>>> binary = lambda n: '' if n==0 else binary(n/2) + str(n%2)>>> binary(5)'101'>>>

2、采用 python 自带了方法 bin 函数,比如 bin(12345) 回返回字符串 '0b11000000111001', 这个时候在把0b去掉即可:
>>> bin(12345).replace('0b','')'11000000111001'

3、也可以采用字符串的 format 方法来获取二进制:
>>> "{0:b}".format(12345)'11000000111001'>>>

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

干嘛不用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'
>>>

㈢ 求助:python如何按位解析二进制数据

可以的,二进制是计算机内的表示方法,处理二进制数据是最基本的能力。

如果是二进制字符串转十进制:

>>>x='10101010'
>>>int(x,2)
170

如果是从文件或网络中获取的数据,要知道某一位是0还是1的话,获取的数据可以按字符读取,由于一个字符由8位二进制表示,分别读取1到8位的二进制值就可以了:

>>>get_char_bit=lambdachar,n:(char>>(8-n))&1#从高到低分别为第1~8位
>>>data=b'ab'#在python3中字符串默认是unicode,所以加上b前缀兼容
>>>#在python3中按字符读取byte字符串是数字,而python2读出来的却是字符,但bytearray是一致的都是数字
>>>data=bytearray(data)
>>>result=[]
>>>forcharindata:
foriinrange(1,9):
result.append(get_char_bit(char,i))

>>>result
[0,1,1,0,0,0,0,1,0,1,1,0,0,0,1,0]

还有一种比较简单的方法是使用内置的bin函数

>>>data=bytearray(b'ab')
>>>result=[]
>>>forcharindata:
result.extend(bin(char)[2:].rjust(8,'0'))

>>>result
['0','1','1','0','0','0','0','1','0','1','1','0','0','0','1','0']
阅读全文

与python获取字符串的二进制相关的资料

热点内容
方舟为什么突然找不到服务器了 浏览:495
中兴ba910怎么升级安卓系统 浏览:789
pr电脑安装没有解压文件怎么办 浏览:681
linux查看所有目录大小 浏览:631
数控加工工艺与编程课后习题 浏览:183
编程入中高考了吗 浏览:704
pdf打开后是空白 浏览:148
python量化交易pdf 浏览:725
照片如何加密不占内存 浏览:965
手机怎么下载小恒钱包app 浏览:849
闪电服务器是什么 浏览:111
单片机入门视频教程第二课 浏览:45
天然气可压缩多少倍 浏览:238
程序员面试评价 浏览:128
手表加密门禁卡 浏览:238
psf已加密 浏览:553
返利app怎么用教程 浏览:888
一个程序员写的诗火了 浏览:613
red摄影机压缩比 浏览:410
app账号怎么弄 浏览:823