首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用python压缩字符串并存储在redis中

如何使用python压缩字符串并存储在redis中
EN

Stack Overflow用户
提问于 2017-11-03 12:17:04
回答 1查看 1.6K关注 0票数 5

我想存储我所有的字符串使用Utf8字符串编解码器与GZIP在python中。

我尝试了下面的代码,但压缩不能正常进行。我不知道这里少了什么。如何使用gzip压缩技术将数据插入到redis中。

在插入到redis之后,它只是打印一些数字,如d49

代码语言:javascript
复制
import redis
import StringIO
import gzip

r = redis.StrictRedis(host='127.0.0.1', port=80, db=0, decode_responses=True)

out = StringIO.StringIO()
with gzip.GzipFile(fileobj=out, mode='w') as f:
    value = f.write('this is my test value')
    r.set('test', value)

提前感谢您的帮助!

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-03 16:50:00

您可以直接使用gzip的compress()方法。

如果您直接压缩文本字符串,

代码语言:javascript
复制
import redis
import gzip

r = redis.StrictRedis(host='127.0.0.1', port=80, db=0, decode_responses=True)
text = 'this is my test value'
value = gzip.compress(text.encode())
r.set('test', value)

如果您正在尝试压缩文件,

代码语言:javascript
复制
import redis
import gzip

r = redis.StrictRedis(host='127.0.0.1', port=80, db=0, decode_responses=True)
with open('text.txt', 'rb') as fp:
    value = gzip.compress(fp.read())
    r.set('test', value)
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47088399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档