Python client for Redis key-value store
redis针对python的客户端,python
github地址:https://github.com/andymccurdy/redis-py/git
安装:github
虽然称redis的python客户端称为redis-py,实际安装时的名字是redis.web
redis-py运行须要先安装和运行起来redis-server的,具体看点击这个网站查看详细信息http://redis.io/topics/quickstartredis
几种安装方式:安全
pip安装 $ sudo pip install redis
easy_install安装 $ sudo easy_install redis
源码安装,先去https://pypi.python.org/pypi/redis这里下载安装包,进入setup.py的目录执行下面命令 $ sudo python setup.py install
NOTE:网站
不建议Windows平台使用redis的ui
快速入门:
spa
>>> import redis >>> r = redis.StrictRedis(host='localhost', port=6379, db=0) >>> r.set('foo', 'bar') True >>> r.get('foo')'bar'
API接口:线程
官方redis 命令文档很是伟大为咱们作个每一个命令的详细解释,你能够去redis官网查看。
redis-py 模块经过两个类(StrictRedis,Redis)来遵循官方的全部标准命令,不过下面的命令除外:
----SELECT:未实现,你会在下面的线程安全章节看到关于这个的解释
----DEL:del 在python中是关键字,因此在redis-py中用delete来代替
----CONFIG GET|SET:分别用config_get 和 config_set来代替
----MULTI/EXEC:事物命令是做为Pipeline类的一部分来实现的,Pipeline类是对事物命令的包装,你也能够经过参数transaction=False来控制事物的使用。在下面的 管道(Pipeline)部分有更详细的解释。
----SUBSCRIBE/LISTEN:相似于管道,发布定阅在class PubSub类中实现,从Redis客户端调用pubsub方法将返回一个pubsub实例,您能够订阅通道和侦听消息.你只能从客户机端调用发布(https://github.com/andymccurdy/redis-py/issues/151#issuecomment-1545015 请看这个注意事项 )
----SCAN/SSCAN/HSCAN/ZSCAN: *scan命令正如在redis命令文档中那样都被实现,此外,每一个相对应scan命令都有一个迭代器的方法 scan_iter/sscan_iter/hscan_iter/zscan_iter
除了上面的变化外,Redis 类是 StrictRedis的子类, 为了提供向后的兼容性重写了一些方法:
LREM: 调换num和value的顺序,这样num能够提供一个默认值为0
ZADD: redis默认指定score参数 在 value的前面,可是redis-py里的Redis类指望是 name1, score1, name2, score2, ...这种形式,也是位置被变换了。
SETEX: 调换 time 和value 参数顺序