python bitarray来往于文件

我正在使用此代码向文件写一个大的bitarray:

import bitarray
bits = bitarray.bitarray(bin='0000011111') #just an example

with open('somefile.bin', 'wb') as fh:
    bits.tofile(fh)

但是,当我尝试使用以下方法读取此数据时:

import bitarray
a = bitarray.bitarray()
with open('somefile.bin', 'rb') as fh:
    bits = a.fromfile(fh)
    print bits

它失败,’bits’是NoneType.我究竟做错了什么?

解决方法:

我认为“a”就是你想要的. a.fromfile(fh)是一个用fh的内容填充a的方法:它不返回bitarray.

>>> import bitarray
>>> bits = bitarray.bitarray('0000011111')
>>> 
>>> print bits
bitarray('0000011111')
>>> 
>>> with open('somefile.bin', 'wb') as fh:
...     bits.tofile(fh)
... 
>>> a = bitarray.bitarray()
>>> with open('somefile.bin', 'rb') as fh:
...     a.fromfile(fh)
... 
>>> print a
bitarray('0000011111000000')
上一篇:总结java中文件拷贝剪切的5种方式-JAVA IO基础总结第五篇


下一篇:python 从多声道 pcm 文件中 转换成单通道 pcm 文件