python 操作redis

Posted xsan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 操作redis相关的知识,希望对你有一定的参考价值。

1、安装指定的包:

pip install redis

2、连接redis并实例化

from redis import Redis
xtredis = Redis(host=115.113.105.75,port=6379)

如果连接有设置密码的redis则使用如下方式:

from redis import Redis
xtredis = Redis(host=115.113.105.75,port=6379,password="123456")

3、使用实例化进行操作redis

  1. 对字符串的操作:操作redis的方法名称,跟之前使用redis-cli一样,现就一些常用的来做个简单介绍,示例代码如下(承接以上的代码):

     1  # 添加一个值进去,并且设置过期时间为60秒,如果不设置,则永远不会过期
     2  xtredis.set(username,xiaotuo,ex=60)
     3  # 获取一个值
     4  xtredis.get(username)
     5  # 删除一个值
     6  xtredis.delete(username)
     7  # 给某个值自增1
     8  xtredis.set(read_count,1)
     9  xtredis.incr(read_count)  # 这时候read_count变为2
    10  # 给某个值减少1
    11  xtredis.decr(read_count) # 这时候read_count变为1

     

  2. 对列表的操作:同字符串操作,所有方法的名称跟使用redis-cli操作是一样的:

     # 给languages这个列表往左边添加一个python
     xtredis.lpush(languages,python)
     # 给languages这个列表往左边添加一个php
     xtredis.lpush(languages,php)
     # 给languages这个列表往左边添加一个javascript
     xtredis.lpush(languages,javascript)
    
     # 获取languages这个列表中的所有值
     print xtredis.lrange(languages,0,-1)
     > [javascript,php,python]

     

  3. 对集合的操作:

     # 给集合team添加一个元素xiaotuo
     xtredis.sadd(team,xiaotuo)
     # 给集合team添加一个元素datuo
     xtredis.sadd(team,datuo)
     # 给集合team添加一个元素slice
     xtredis.sadd(team,slice)
    
     # 获取集合中的所有元素
     xtredis.smembers(team)
     > [datuo,xiaotuo,slice] # 无序的

     

  4. 对哈希(hash)的操作:

     # 给website这个哈希中添加baidu
     xtredis.hset(website,baidu,baidu.com)
     # 给website这个哈希中添加google
     xtredis.hset(website,google,google.com)
    
     # 获取website这个哈希中的所有值
     print xtredis.hgetall(website)
     > {"baidu":"baidu.com","google":"google.com"}

     

    事务(管道)操作:redis支持事务操作,也即一些操作只有统一完成,才能算完成。否则都执行失败,用python操作redis也是非常简单,示例代码如下:
  5.  # 定义一个管道实例
     pip = xtredis.pipeline()
     # 做第一步操作,给BankA自增长1
     pip.incr(BankA)
     # 做第二步操作,给BankB自减少1
     pip.desc(BankB)
     # 执行事务
     pip.execute()

以上便展示了python-redis的一些常用方法。

以上是关于python 操作redis的主要内容,如果未能解决你的问题,请参考以下文章

jedis连接redis

使用Python操作Redis详解

Python 之 操作Redis

python操作Redis缓存

Python操作非关系型数据库Redis多测师

Python操作非关系型数据库Redis多测师