Chinaunix首页 | 论坛 | 博客
  • 博客访问: 659439
  • 博文数量: 149
  • 博客积分: 3901
  • 博客等级: 中校
  • 技术积分: 1558
  • 用 户 组: 普通用户
  • 注册时间: 2009-02-16 14:33
文章分类

全部博文(149)

文章存档

2014年(2)

2013年(10)

2012年(32)

2011年(21)

2010年(84)

分类: Python/Ruby

2011-04-15 09:04:00




%20bit%20Compression&f=false





from bitarray import bitarray
from gzip import GzipFile
from cStringIO import StringIO
import marshal

bc=bitarray()
for n in xrange( 1000 ) :
    bc.extend(bitarray(10**6))

#120M
f1=open('/tmp/bc1.ba','wa')
bc.tofile(f1)


sio = StringIO()
f2=open('/tmp/bc2.ba','wb')
w = GzipFile(None,'wb',9,sio)
w.write(bc.tostring())
w.close()
marshal.dump(f2,sio)


# 一般在 160k 左右
w = GzipFile('/tmp/bc3.ba','wb',9)
w.write(bc.tostring())
w.close()

r = GzipFile('/tmp/bc.ba','rb',9)
rr = r.read()
bb = bitarray()
bb.fromstring(rr)
bb == bc


阅读(1068) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~