#!/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 redis使用的更多相关文章

  1. python+redis测试环境搭建

    针对windows操作系统. redis安装: 微软操作系统下,需下载github下面的开源项目,redis网站地址可以找到,直接解压即可. cmd到指定目录,输入下方命令,启动redis服务. re ...

  2. Python redis 简单介绍

    Python redis 简单介绍 1.安装 终端输入: pip(or)pip3.6 install redis 安装成功 2.哈哈,发现我并没有redis服务可以访问,所以到这里,在本机安装了red ...

  3. 生产消费者模式与python+redis实例运用(中级篇)

    上一篇文章介绍了生产消费者模式与python+redis实例运用(基础篇),但是依旧遗留了一个问题,就是如果消费者消费的速度跟不上生产者,依旧会浪费我们大量的时间去等待,这时候我们就可以考虑使用多进程 ...

  4. 生产消费者模式与python+redis实例运用(基础篇)

    根据这个图,我们举个简单的例子:假如你去某个餐厅吃饭,点了很多菜,厨师要一个一个菜的做,一个厨师不可能同时做出所有你点的菜,于是你有两个选择:第一个,厨师把所有菜都上齐了,你才开始吃:还有一个选择,做 ...

  5. python redis中blpop和lpop的区别

    python redis 中blpop返回的是元组对象,因此返回的时候注意 lpop返回的是对象

  6. windows中实现python,redis服务自动重启(任务计划程序+bat脚本)

    需求:银行电脑无法自动开机,只能 通过 应用相关服务每天自动重启的方式实现 服务更新并且防止服务假死,内存过大 等情况 相关工具:win10系统中,使用windows自带的任务计划程序 和 bat脚本 ...

  7. python redis分布式锁改进

    0X01 python redis分布式锁通用方法 REDIS分布式锁实现的方式:SETNX + GETSET 使用Redis SETNX 命令实现分布式锁 python 版本实现上述思路(案例1) ...

  8. python redis之连接池的原理

    python redis之连接池的原理 转载地址 什么是连接池 通常情况下, 当我们需要做redis操作时, 会创建一个连接, 并基于这个连接进行redis操作, 操作完成后, 释放连接, 一般情况下 ...

  9. python redis 实现简单的消息订阅

    python + redis 实现简单的消息订阅 订阅端 import redis from functools import wraps class Subscribe: def __init__( ...

  10. Python—redis

    一.redis redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sor ...

随机推荐

  1. Codeforces 723C. Polycarp at the Radio 模拟

    C. Polycarp at the Radio time limit per test: 2 seconds memory limit per test: 256 megabytes input: ...

  2. ABP的数据过滤器(Data Filters)

    http://www.aspnetboilerplate.com/Pages/Documents/Data-Filters 我们在数据库开发中,一般会运用软删除 (soft delete)模式 ,即不 ...

  3. asp.net 文件批量移动重命名

    最近闲时写了个批量移动重命名文件的工具 点击下载工具

  4. 国内从事GIS行业的公司及其网址

    www.esrichina-bj.cn esri中国北京http://www.lingtu.com/ 北京灵图软件技术有限公司(三维gis) http://www.spatialport.com.cn ...

  5. WordPaster-Chrome浏览器控件安装方法

    将WordPaster.crx拖到Chrome扩展面板中安装

  6. UVALive 3942 Remember the Word(字典树+DP)

    题目链接:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_ ...

  7. static, readonly, const

    static Use the static modifier to declare a static member, which belongs to the type itself rather t ...

  8. Ubuntu远程开机 (Wake on Lan)

    启动者(A) 被远程开启者(B) 一.被远程开启的电脑(电脑B):1. 重新开机,并进到BIOS设定2. 把Wake On Land / Wake On PCI(E)设为Enable3. 储存并进入U ...

  9. [leetcode 17]Letter Combinations of a Phone Number

    1 题目: Given a digit string, return all possible letter combinations that the number could represent. ...

  10. 对SQLSERVER进行性能监控

    对SQLSERVER进行性能监控 在上一篇文章<SQLSERVER性能监控级别步骤>里说到性能监控的步骤中有一步涉及到建立性能基线,但是没有说到有哪些计数器 可以用来进行监控的,这篇文章结 ...