python 操作Redis数据库
来源:互联网 发布:微信群一键加好友软件 编辑:程序博客网 时间:2024/06/05 17:50
一、Redis数据库介绍
REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。
Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。
Redis 与其他 key - value 缓存产品有以下三个特点:
- Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
- Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
- Redis支持数据的备份,即master-slave模式的数据备份。
二、安装及配置
官网:https://redis.io/
中文网站: http://www.redis.cn/
windows用户从这里下载: https://github.com/MSOpenTech/redis/releases
其他的系统均可以在官网中找到。
三、图形化管理工具
RedisDesktopManager是一款Redis可视化的软件。
官网: https://redisdesktop.com/
Github: https://github.com/uglide/RedisDesktopManager
下载地址:https://redisdesktop.com/download
使用帮助: http://docs.redisdesktop.com/en/latest/
四、Redis 数据类型以及相关操作
Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。
五、python 操作Redis
1. redispy 安装
PyPI: https://pypi.python.org/pypi/redis
Github: https://github.com/andymccurdy/redis-py
文档: http://redis-py.readthedocs.io/en/latest/
PS: 最简单通过pip安装, pip install redis
2. redis-python代码示例(字符串和列表)
# coding=utf-8import redisclass TestString(object): """ set -- 设置值 get -- 获取值 mset -- 设置多个键值对 append -- 添加字符串 del -- 删除 incr/decr -- 增加/减少 1 """ def __init__(self): self.r = redis.StrictRedis(host='localhost', port=6379, db=0) def test_set(self): """使用set设置值""" result = self.r.set('programing_language', 'python') return result def test_get(self): """使用get获取值""" result = self.r.get('programing_language') return result def test_mset(self): """使用mset设置多个键值对""" d = { 'name1': 'wei', 'name2': 'yang' } result = self.r.mset(d) return result def test_mget(self): """使用mget获取多个键值对""" l = ['name1', 'name2'] result = self.r.mget(l) return result def test_del(self): result = self.r.delete('name2') return resultclass TestList(object): """ lpush/rpush -- 从左/右插入数据 lrange -- 获取一定长度的数据 ltrim -- 截取一定长度的数据 lpop/rpop -- 移除最左/右的元素返回 lpushx/rpushx -- key存在的时候才插入数据,不存在的时候不做插入处理 """ def __init__(self): self.r = redis.StrictRedis(host='localhost', port=6379, db=0) def test_push(self): t = ('wei', 'hai') result = self.r.lpush('l_eat', *t) print result result = self.r.lrange('l_eat', 0, -1) print result def test_pop(self): result = self.r.lpop('l_eat') print result result = self.r.lrange('l_eat', 0, -1) print resultdef main(): str_obj = TestString() # str_obj.test_set() print str_obj.test_get() # print str_obj.test_mset() print str_obj.test_mget() # print str_obj.test_del() list_obj = TestList() # list_obj.test_push() list_obj.test_pop()if __name__ == '__main__': main()
- Python操作Redis数据库
- python 操作Redis数据库
- 用python操作redis数据库
- Python练习4-操作redis数据库
- redis -- python操作连接redis
- C++操作Redis数据库
- C++操作Redis数据库
- Nodejs 操作redis数据库
- java操作redis数据库
- C++操作Redis数据库
- redis数据库--操作对象
- java操作Redis数据库
- C++操作Redis数据库
- C++操作Redis数据库
- C++操作Redis数据库
- redis数据库基本操作
- redis操作数据库实例-
- Redis数据库操作
- 浅谈Redis
- 欧拉-伯努利梁横向振动2
- 为什么更喜欢和朋友一起玩游戏
- 欧拉定理与函数
- 课表
- python 操作Redis数据库
- 数据结构 队列入队,出队编程的例子
- 两个整数排序
- 深度强化学习与自适应在线学习的阿里实践
- fgetc统计文件的字符个数
- pip安装和使用
- codeforces 315 B.Sereja and Array(线段树区间更新+单点更新+单点询问)
- c语言的日志库
- 三个整数排序