跳转到主要内容

Pythonic Redis客户端包装器。

项目描述

https://img.shields.io/pypi/v/rediswrapper.svg https://img.shields.io/pypi/pyversions/rediswrapper.svg https://github.com/frostming/rediswrapper/actions/workflows/ci.yml/badge.svg

rediswrapper是为最终用户提供的Redis客户端的Pythonic包装器。整个存储行为就像一个Python字典及其子存储值。

功能

  • 根客户端支持字典-like操作

  • Python对象包装器用于列表、集合、哈希类型值

  • 存储和检索数据时的隐式序列化和反序列化

安装

从PyPI

pip install rediswrapper

从GitHub

git clone https://github.com/frostming/rediswrapper
cd rediswrapper
pip install .

用法

rediswrapper会尝试序列化非字符串值并将它们存储在Redis中,并在检索时进行反序列化。

所有Redis值类型都通过相应的Python对象进行模拟,并支持所有标准方法,就像内置类型一样。

>>> import rediswrapper
>>> redis = rediswrapper.RedisDict()
# String value
>>> redis['a'] = 'hello'
# int value
>>> redis['b'] = 2
>>> dict(redis)
{'a': 'hello', 'b': 2}
# Picklable object
>>> import datetime
>>> redis['c'] = datetime.datetime.now()
# List value
>>> redis['d'] = list(range(5))
>>> redis['d'].append(0)
>>> redis['d']
ListType value([0, 1, 2, 3, 4, 0])
# Hash value
>>> redis['e'] = {'a': 1, 'b': 2}
>>> redis['e'].get('a')
1
# Set value
>>> redis['f'] = set([1, 2])
>>> redis['f'].add(3)
>>> redis['f']
SetType value([1, 2, 3])

要检查这些值类型,应使用在collections模块中定义的ABC。

>>> from collections import Mapping
>>> isinstance(redis['e'], Mapping)
True

历史

v0.4.0
  • 停止支持低于3.6的Python

v0.3.0
  • 停止支持Python 3.3

  • 修复了一个可能导致用户运行任意脚本的漏洞问题。

许可

本作品在MIT许可证下开源。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定该选择哪个,请了解更多关于安装包的信息。

源分布

rediswrapper-0.4.0.post1.tar.gz (4.8 kB 查看哈希值)

上传时间

构建分布

rediswrapper-0.4.0.post1-py3-none-any.whl (5.7 kB 查看哈希值)

上传时间 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面