2.Python操作Redis:列表(List)
2016-04-29 22:17
1086 查看
Python操作Redis主要利用了redis模块来实现,list表操作函数主要模拟了Redis操作命令LPUSH,LRANGE,LINDEX,BLPOP,BRPOP。实际上由于Python已经redis模块版本问题,可能有些其他的高级Redis列表(List)用法无法实现。
lrange获取列表指定范围的函数,lrange key start end
lindex根据列表下标量获取列表元素值, lindex key index
blpop从列表头部取出第一个元素,返回该元素值并从列表删除(l代表left,左边)
brpop从列表尾部取出第一个元素,返回该元素值并从列表删除(l代表right,右边)
LPUSHX、RPUSHX以及其他一些Redis列表(List)函数目前版本无法实现,如有可实现方法博客代码事例将会得到更新。
参考资料
1、Redis 列表(List)
2、Python redis文档(python交互模式下命令
函数说明
lpush函数实现了从向指定redis列表头部压入数据功能,lpush key valuelrange获取列表指定范围的函数,lrange key start end
lindex根据列表下标量获取列表元素值, lindex key index
blpop从列表头部取出第一个元素,返回该元素值并从列表删除(l代表left,左边)
brpop从列表尾部取出第一个元素,返回该元素值并从列表删除(l代表right,右边)
LPUSHX、RPUSHX以及其他一些Redis列表(List)函数目前版本无法实现,如有可实现方法博客代码事例将会得到更新。
代码示例
#!/usr/bin/python import redis ## Connect local redis service client =redis.Redis(host='127.0.0.1',port=6379,db=0) print "Connection to server successfully! \n" ## Stored data in list (lpush) listDict = {'tutorial-list':['Redis','Mangodb','MySQL','PostgreSQL']} for key in listDict.keys(): print "Key ",key valueList=listDict[key] for val in valueList: client.lpush(key,val) #client.lpush("tutorial-list","Redis") #client.lpush("tutorial-list","Mangodb") #client.lpush("tutorial-list","MySQL") # Get data from Redis (lrange) arrayList = client.lrange("tutorial-list",0,5) print 'Stored srting in redis: ', print arrayList # Get element from list with index(lindex) for i in xrange(4): ele = client.lindex("tutorial-list",i) print "The element with index number",i,"is",ele # Get list length (llen) l = client.llen("tutorial-list") print "The list tutorial-list length is",l # Get head element from tutorial-list(blpop) for i in xrange(2): ele = client.blpop("tutorial-list",10) print "The",(i+1),"element from left ",ele # Get tail element from tutorial-list(brpop) for i in xrange(2): ele = client.brpop("tutorial-list",10) print "The",(i+1),"element from right ",ele hashVal = client.hgetall('profile') print hashVal #Empty db client.flushdb()
参考资料
1、Redis 列表(List)
2、Python redis文档(python交互模式下命令
>>>help redis)
相关文章推荐
- 如何高效地向Redis插入大量的数据(转)
- Redis Cluster Specification
- Redis优化经验
- redis 集群
- redis 主从集群说明及配置
- Python使用Redis数据库
- redis命令处理量
- .Net使用Redis详解之ServiceStack.Redis(7)
- 如何高效地向Redis插入大量的数据
- Redis 详解 (一) StackExchange.Redis Client
- 基于scrapy和redis的分布式爬虫环境搭建
- Redis --> Ubuntu安装redis
- redis 基本命令学习二(sets、sorted sets)
- Redis安装部署
- Redis --> Redis架构设计
- redis在.net架构中的应用(1)--利用servicestack连接redis
- Redis+Keepalived高可用方案详细分析
- 利用redis + lua解决抢红包高并发的问题
- Redis安装及使用
- redis 订阅者发布者