前沿:随着互联网的高速发展,数据变得越来越重要,Python成为了人工智能的热门语言,而Nosql数据库已成为日常开发用品。

今天要写的是Python操作Redis

Redis的安装我就不介绍了,你可以看看Redis一系列的文章 我也有关于Redis安装一文.

https://www.cnblogs.com/ZaraNet/p/9433935.html

虽然Python是个大热门,但其方向不在于Web端,非常适合数据挖掘,我是web方向的工程师.. 热衷于.NET/C#,但也喜欢Python ,如果想要脚踏两只船,可以通过intro的nuget包进行两者兼容。

正文:

一.Python连接Redis

开发工具为Pycharm,包:Redis。可以直接进行安装第三方模块

redis-py提供两个类Redis和StrictRedis用于实现Redis的命令,StrictRedis用于实现大部分官方的命令,并使用官方的语法和命令,Redis是StrictRedis的子类

操作:

一.string 操作

添加值:

 set(name, value, ex=None, px=None, nx=False, xx=False)

参数:
ex,过期时间(秒)
px,过期时间(毫秒)
nx,如果设置为True,则只有name不存在时,当前set操作才执行
xx,如果设置为True,则只有name存在时,岗前set操作才执行

可以渐变为  setnx(name, value)、psetex(name, time_ms, value)、setex(name, value, time)

 

获取值:get(name)根据key进行获取

 

还可以在获取的时候去截取值

getrange(key, start, end)

Hash操作

设置值

hset(name, key, value)

如果已经有这个name了 就修改,如果没有就创建

hmset(name, mapping)
在name对应的hash中批量设置键值对  例如
r.hmset('xx', {'k1':'v1', 'k2': 'v2'})

获取值

hget(name,key)

1 # 在name对应的hash中获取根据key获取value

hgetall(name)

1 获取name对应hash的所有键值

hlen(name)

1 # 获取name对应的hash中键值对的个数

hkeys(name)

1 # 获取name对应的hash中所有的key的值

hvals(name)

1 # 获取name对应的hash中所有的value的值

hexists(name, key)

1 # 检查name对应的hash是否存在当前传入的key

hdel(name,*keys)

1 # 将name对应的hash中指定key的键值对删除

操作list

lpush(name,values)

1 # 在name对应的list中添加元素,每个新的元素都添加到列表的最左边
2
3 # 如:
4 # r.lpush('oo', 11,22,33)
5 # 保存顺序为: 33,22,11
6
7 # 扩展:
8 # rpush(name, values) 表示从右向左操作

lpushx(name,value)

1 # 在name对应的list中添加元素,只有name已经存在时,值添加到列表的最左边
2
3 # 更多:
4 # rpushx(name, value) 表示从右向左操作

llen(name)

1 # name对应的list元素的个数

linsert(name, where, refvalue, value))

1 # 在name对应的列表的某一个值前或后插入一个新值
2
3 # 参数:
4 # name,redis的name
5 # where,BEFORE或AFTER
6 # refvalue,标杆值,即:在它前后插入数据
7 # value,要插入的数据

r.lset(name, index, value)

1 # 对name对应的list中的某一个索引位置重新赋值
2
3 # 参数:
4 # name,redis的name
5 # index,list的索引位置
6 # value,要设置的值

r.lrem(name, value, num)

1 # 在name对应的list中删除指定的值
2
3 # 参数:
4 # name,redis的name
5 # value,要删除的值
6 # num, num=0,删除列表中所有的指定值;
7 # num=2,从前到后,删除2个;
8 # num=-2,从后向前,删除2个

Python操作Redis及连接方式的更多相关文章

  1. python操作Redis安装、支持存储类型、普通连接、连接池

    一.python操作redis安装和支持存储类型 安装redis模块 pip3 install redis 二.Python操作Redis之普通连接 redis-py提供两个类Redis和Strict ...

  2. Redis常用操作大全和Python操作Redis

    简单使用 utils.py import redis POOL=redis.ConnectionPool(host='127.0.0.1',port=6379) view.py 第一种方式 (通用方式 ...

  3. Python—操作redis

    Python操作redis 连接方式:点击 1.String 操作 redis中的String在在内存中按照一个name对应一个value来存储 set() #在Redis中设置值,默认不存在则创建, ...

  4. python——操作Redis

    在使用django的websocket的时候,发现web请求和其他当前的django进程的内存是不共享的,猜测django的机制可能是每来一个web请求,就开启一个进程去与web进行交互,一次来达到利 ...

  5. Python操作Redis、Memcache、RabbitMQ、SQLAlchemy

    Python操作 Redis.Memcache.RabbitMQ.SQLAlchemy redis介绍:redis是一个开源的,先进的KEY-VALUE存储,它通常被称为数据结构服务器,因为键可以包含 ...

  6. 第二百九十六节,python操作redis缓存-Hash哈希类型,可以理解为字典类型

    第二百九十六节,python操作redis缓存-Hash哈希类型,可以理解为字典类型 Hash操作,redis中Hash在内存中的存储格式如下图: hset(name, key, value)name ...

  7. 第二百九十五节,python操作redis缓存-字符串类型

    python操作redis缓存-字符串类型 首先要安装redis-py模块 python连接redis方式,有两种连接方式,一种是直接连接,一张是通过连接池连接 注意:以后我们都用的连接池方式连接,直 ...

  8. python操作Redis缓存

    python操作Redis缓存 https://www.cnblogs.com/guotianbao/p/8683037.html 学习资料:电子书资源 联系邮箱:gmu1592618@gmail.c ...

  9. Python 操作Redis 转载篇

    Python操作Redis数据库 连接数据库 StrictRedis from redis import StrictRedis # 使用默认方式连接到数据库 redis = StrictRedis( ...

随机推荐

  1. 关于二进制枚举-计蒜客-得到整数X

    某君有 n个互不相同的正整数,现在他要从这 n 个正整数之中无重复地选取任意个数,并仅通过加法凑出整数 X.求某君有多少种不同的方案来凑出整数 X. 输入格式 第一行,输入两个整数 n,X(1≤n≤2 ...

  2. mongo删除指定字段,可多个字段同时删除

    参考代码: db.getCollection('Person').update({"email":{$exists:true}},{$unset:{"email" ...

  3. python3安装lxmlpipinstall安装失败解决办法

    最近在学习python爬虫技术,lxml模块拥有很强大的获取元素功能,但是安装时总超时报错,如下解决办法 选择好python版本→注意pip版本→下载对应lxml.whl→键入对应的字符串→bingo ...

  4. (二)stm32f103~~GPIO基本操作二(按键)

    GPIO基本配置之按键输入操作(通过按键控制小灯的翻转) KEY0 对用端口PE4,KEY1 对用端口PE3,这两个按键是一段接地,另一端接单片机.KEYWKUP 对用端口PA0,这个按键是一段接高电 ...

  5. PBRT笔记(14)——光线传播2:体积渲染

    传输公式 传输方程是控制光线在吸收.发射和散射辐射的介质中的行为的基本方程.它解释了第11章中描述的所有体积散射过程--吸收.发射和内.外散射.并给出了一个描述环境中辐射分布的方程.光传输方程实际上是 ...

  6. 2018-2019-2 网络对抗技术 20162329 Exp1 PC平台逆向破解

    目录 1.实践目标 2.实验内容 2.1 手工修改可执行文件,改变程序执行流程,直接跳转到getShell函数. 2.2 利用foo函数的Bof漏洞,构造一个攻击输入字符串,覆盖返回地址,触发getS ...

  7. [CF1132G]Greedy Subsequences

    [CF1132G]Greedy Subsequences 题目大意: 定义一个序列的最长贪心严格上升子序列为:任意选择第一个元素后,每次选择右侧第一个大于它的元素,直到不能选为止. 给定一个长度为\( ...

  8. 通过源码理解HashMap的并发问题

    最近在学习有关于Java的基础知识,在学习到HashMap的相关知识的时候,了解了HashMap的并发中会出现的问题,在此记录,加深理解(这篇文章是基于Java1.7的,主要是为了更加直观,更新版本的 ...

  9. Kafka 安装配置

    1. 下载安装kafka 下载地址:http://apache.fayea.com/kafka/ 解压安装包 tar zxvf kafka_版本号.tgz 2. 配置 修改kafka的config/s ...

  10. Git SSL公钥密钥生成

    下面教大家简单易懂的五步配置好密钥 第一次配置ssh 和ssl git config --global --list 查看git的配置 步骤: 1. git config --global user. ...