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 參數順序