本文整理汇总了Python中bitstring.ConstBitStream.startswith方法的典型用法代码示例。如果您正苦于以下问题:Python ConstBitStream.startswith方法的具体用法?Python ConstBitStream.startswith怎么用?Python ConstBitStream.startswith使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类bitstring.ConstBitStream
的用法示例。
在下文中一共展示了ConstBitStream.startswith方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: huff_decode
# 需要导入模块: from bitstring import ConstBitStream [as 别名]
# 或者: from bitstring.ConstBitStream import startswith [as 别名]
def huff_decode(enc_file):
enc = ConstBitStream(enc_file)
tree = []
tree_sz = enc.read("uint:8")
while tree_sz > 0:
s = enc.read("bytes:1")
c_sz = enc.read("uint:8")
c = BitArray(enc.read("bits:"+str(c_sz)))
tree.append([s, c])
tree_sz -= 1
tree = sorted(tree, key = lambda v: v[1].len)
text = ""
while True:
try:
found = False
for s,c in tree:
if enc.startswith(c, enc.pos):
print enc[enc.pos:].bin
code = enc.read("bits:"+str(c.len))
text += s
found = True
break
if found == False:
raise ReadError
except ReadError:
break
return text