python操作redis的方法


Posted in Python onJuly 07, 2015

本文实例讲述了python操作redis的方法。分享给大家供大家参考。具体如下:

#!/usr/bin/python
#coding=utf-8
import redis
class CRedis:
  def __init__(self):
    self.host = 'localhost'
    self.port = 6379
    self.db = 0
    self.r = redis.Redis(host = self.host, port = self.port, db = self.db)
  #1. strings 类型及操作
  #设置 key 对应的值为 string 类型的 value
  def set(self, key, value):
    return self.r.set(key, value)
  #设置 key 对应的值为 string 类型的 value。如果 key 已经存在,返回 0,nx 是 not exist 的意思
  def setnx(self, key, value):
    return self.r.setnx(key, value)
  #设置 key 对应的值为 string 类型的 value,并指定此键值对应的有效期
  def setex(self, key, time, value):
    return self.r.setex(key, time, value)
  #设置指定 key 的 value 值的子字符串
  #setrange name 8 gmail.com
  #其中的 8 是指从下标为 8(包含 8)的字符开始替换
  def setrange(self, key, num, value):
    return self.r.setrange(key, num, value)
  #获取指定 key 的 value 值的子字符串
  def getrange(self, key, start ,end):
    return self.r.getrange(key, start, end)
  #mget(list)
  def get(self, key):
    if isinstance(key, list):
      return self.r.mget(key)
    else:
      return self.r.get(key)
  #删除
  def remove(self, key):
    return self.r.delete(key)
  #自增
  def incr(self, key, default = 1):
    if (1 == default):
      return self.r.incr(key)
    else:
      return self.r.incr(key, default)
  #自减
  def decr(self, key, default = 1):
    if (1 == default):
      return self.r.decr(key)
    else:
      return self.r.decr(key, default)
  #2. hashes 类型及操作
  #根据email获取session信息
  def hget(self, email):
    return self.r.hget('session', email)
  #以email作为唯一标识,增加用户session
  def hset(self, email, content):
    return self.r.hset('session', email, content)
  #获取session哈希表中的所有数据
  def hgetall(self):
    return self.r.hgetall('session')
  #删除hashes
  def hdel(self, name, key = None):
    if(key):
      return self.r.hdel(name, key)
    return self.r.hdel(name)
  #清空当前db
  def clear(self):
    return self.r.flushdb()
  #3、lists 类型及操作
  #适合做邮件队列
  #在 key 对应 list 的头部添加字符串元素
  def lpush(self, key ,value):
    return self.r.lpush(key, value)
  #从 list 的尾部删除元素,并返回删除元素
  def lpop(self, key):
    return self.r.plush(key)
if __name__ == '__main__':
  r = CRedis()

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python创建线程示例
May 06 Python
python进阶教程之循环对象
Aug 30 Python
Python中运行并行任务技巧
Feb 26 Python
Python编写生成验证码的脚本的教程
May 04 Python
对python for 文件指定行读写操作详解
Dec 29 Python
python反编译学习之字节码详解
May 19 Python
python开发之anaconda以及win7下安装gensim的方法
Jul 05 Python
ML神器:sklearn的快速使用及入门
Jul 11 Python
TensorFlow Saver:保存和读取模型参数.ckpt实例
Feb 10 Python
pycharm运行程序时看不到任何结果显示的解决
Feb 21 Python
Python 中random 库的详细使用
Jun 03 Python
Python函数对象与闭包函数
Apr 13 Python
python生成IP段的方法
Jul 07 #Python
Python的多态性实例分析
Jul 07 #Python
Python中的urllib模块使用详解
Jul 07 #Python
Python实现图像几何变换
Jul 06 #Python
Python统计日志中每个IP出现次数的方法
Jul 06 #Python
python统计日志ip访问数的方法
Jul 06 #Python
python检查指定文件是否存在的方法
Jul 06 #Python
You might like
php中解析带中文字符的url函数分享
2015/01/20 PHP
在php中设置session用memcache来存储的方法总结
2016/01/14 PHP
thinkPHP框架对接支付宝即时到账接口回调操作示例
2016/11/14 PHP
laravel实现按时间日期进行分组统计方法示例
2019/03/23 PHP
破除网页鼠标右键被禁用的绝招大全
2006/12/27 Javascript
javascript YUI 读码日记之 YAHOO.util.Dom - Part.4
2008/03/22 Javascript
JavaScript 乱码问题
2009/08/06 Javascript
基于jquery的inputlimiter 实现字数限制功能
2010/05/30 Javascript
轻量级javascript 框架Backbone使用指南
2015/07/24 Javascript
基于jquery实现图片相关操作(重绘、获取尺寸、调整大小、缩放)
2015/12/25 Javascript
深入探究JavaScript中for循环的效率问题及相关优化
2016/03/13 Javascript
CascadeView级联组件实现思路详解(分离思想和单链表)
2016/04/12 Javascript
JS ES6多行字符串与连接字符串的表示方法
2017/04/26 Javascript
利用JS制作万年历的方法
2017/08/16 Javascript
基于 Vue.js 2.0 酷炫自适应背景视频登录页面实现方式
2018/01/17 Javascript
原生JS forEach()和map()遍历的区别、兼容写法及jQuery $.each、$.map遍历操作
2019/02/27 jQuery
js实现弹出框的拖拽效果实例代码详解
2019/04/16 Javascript
深入浅析Vue中mixin和extend的区别和使用场景
2019/08/01 Javascript
详解如何在Javascript和Sass之间共享变量
2019/11/13 Javascript
Python中使用Inotify监控文件实例
2015/02/14 Python
Tensorflow中使用tfrecord方式读取数据的方法
2018/06/19 Python
解决tensorflow测试模型时NotFoundError错误的问题
2018/07/27 Python
Pandas:Series和DataFrame删除指定轴上数据的方法
2018/11/10 Python
Python3模拟登录操作实例分析
2019/03/12 Python
django框架中间件原理与用法详解
2019/12/10 Python
tensorflow求导和梯度计算实例
2020/01/23 Python
Mac中PyCharm配置Anaconda环境的方法
2020/03/04 Python
tensorflow实现将ckpt转pb文件的方法
2020/04/22 Python
Melijoe美国官网:法国奢侈童装购物网站
2017/04/19 全球购物
Zooplus罗马尼亚:宠物食品和配件
2019/11/02 全球购物
德国Discount-Apotheke中文官网:DC德式康线上药房
2020/02/18 全球购物
服务之星获奖感言
2014/01/21 职场文书
不打扫卫生检讨书
2014/02/12 职场文书
《小小竹排画中游》教学反思
2014/02/26 职场文书
工程采购员岗位职责
2014/03/09 职场文书
OpenCV-Python实现人脸美白算法的实例
2021/06/11 Python