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抓取京东商城手机列表url实例代码
Dec 18 Python
Python实现抓取网页并且解析的实例
Sep 20 Python
python获取本机mac地址和ip地址的方法
Apr 29 Python
python Socket之客户端和服务端握手详解
Sep 18 Python
用matplotlib画等高线图详解
Dec 14 Python
浅谈django rest jwt vue 跨域问题
Oct 26 Python
pybind11在Windows下的使用教程
Jul 04 Python
正则给header的冒号两边参数添加单引号(Python请求用)
Aug 09 Python
Python图像处理库PIL的ImageFilter模块使用介绍
Feb 26 Python
Python如何重新加载模块
Jul 29 Python
Python3如何使用多线程升程序运行速度
Aug 11 Python
python如何遍历指定路径下所有文件(按按照时间区间检索)
Sep 14 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中路径问题的解决方案
2006/10/09 PHP
ThinkPHP中RBAC类的四种用法分析
2014/11/24 PHP
JavaScript 基础知识 被自己遗忘的
2009/10/15 Javascript
ECMAScript 5中的属性描述符详解
2015/03/02 Javascript
js阻止浏览器默认行为触发的通用方法(推荐)
2016/05/15 Javascript
基于JS代码实现导航条弹出式悬浮菜单
2016/06/17 Javascript
AngularJS $injector 依赖注入详解
2016/09/14 Javascript
canvas实现探照灯效果
2017/02/07 Javascript
NodeJS处理Express中异步错误
2017/03/26 NodeJs
Ionic + Angular.js实现验证码倒计时功能的方法
2017/06/12 Javascript
Vue-router 类似Vuex实现组件化开发的示例
2017/09/15 Javascript
jQury Ajax使用Token验证身份实例代码
2017/09/22 Javascript
详解Nuxt.js Vue服务端渲染摸索
2018/02/08 Javascript
JS简单实现动态添加HTML标记的方法示例
2018/04/08 Javascript
微信小程序自定义键盘 内部虚拟支付
2018/12/20 Javascript
javascript跳转与返回和刷新页面的实例代码
2019/11/20 Javascript
vue组件系列之TagsInput详解
2020/05/14 Javascript
vue实现选中效果
2020/10/07 Javascript
vuex Module将 store 分割成模块的操作
2020/12/07 Vue.js
朴素贝叶斯算法的python实现方法
2014/11/18 Python
Python中pow()和math.pow()函数用法示例
2018/02/11 Python
spark: RDD与DataFrame之间的相互转换方法
2018/06/07 Python
python实现猜单词小游戏
2020/05/22 Python
浅谈python 导入模块和解决文件句柄找不到问题
2018/12/15 Python
ERLANG和PYTHON互通实现过程详解
2019/07/05 Python
Python K最近邻从原理到实现的方法
2019/08/15 Python
Python基于pillow库实现生成图片水印
2020/09/14 Python
python 读取yaml文件的两种方法(在unittest中使用)
2020/12/01 Python
史泰博(Staples)中国官方网站:办公用品一站式采购
2016/09/05 全球购物
美国葡萄酒网上商店:Martha Stewart Wine Co.
2019/03/17 全球购物
加大码胸罩、内裤和服装:Just My Size
2019/03/21 全球购物
解释DataSet(ds) 和 ds as DataSet 的含义
2014/07/27 面试题
保荐人的岗位职责
2013/11/19 职场文书
委托书模板
2014/04/04 职场文书
高中生个性发展自我评价
2015/03/09 职场文书
Java框架入门之简单介绍SpringBoot框架
2021/06/18 Java/Android