更好的位操作,允许索引和自动位标志。
colorguard的Python项目详细描述
color guard在python中提供简单的位操作和位标志。一切都建立在 类型int,因此不会丢失数字功能,同时可以索引和切片二进制数字 就像琴弦一样。
基本用法:
>>> num=Bits(20)>>> numBits(0b10100) >>> num*3Bits(0b111100) >>> num[:4]Bits(0b1010) >>> num.bit_length()5 >>> num.join(0b101)Bits(0b10100101)
color guard还支持与其他python数据类型的转换。
>>> Bits.from_binary("111101001101")Bits(0b111101001101) >>> Bits.from_hex("abc123")Bits(0b101010111100000100100011) >>> Bits.from_bytes(b"abc")Bits(0b11000010110001001100011) >>> bytes(Bits(367))b'\x01o' >>> int(Bits(0b1011010))90 >>> list(Bits(367))[1, 0, 1, 1, 0, 1, 1, 1, 1]
功能
- <字符串>二进制>字符串的索引和切片
- 几种python数据类型之间的转换
- 所有内置数学运算,包括位操作和比较
- 保持位长度的填充二进制数
- 自定义、易于使用的位标志
- 从字节或流加载位字段
- 字段的自定义数据描述符
- 字段编辑&转换为字节
有关更多文档,请访问http://paric.xyz/python/