前沿:随着互联网的高速发展,数据变得越来越重要,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个

转载于:https://www.cnblogs.com/ZaraNet/p/9724022.html

Python操作Redis及连接方式相关推荐

  1. python操作redis用法详解

    1.简单介绍 安装redis pip install redis Redis是一个基于内存的高效的键值型非关系型数据库,存取效率极高,而且支持多种存储数据结构,使用也非常简单.本节中,我们就来介绍一下 ...

  2. python redis 操作_使用Python操作redis

    在使用python操作redis之前,需要先安装redis库: pip install redis. 创建连接方式: StrictRedis:实现大部分官方命令. Redis:是StrictRedis ...

  3. Python 操作 redis

    官网命令(英文)列表:http://redis.io/commands Redis 教程:http://www.redis.net.cn/tutorial/3501.html Redis 命令参考:h ...

  4. Python操作Redis和Memcached

    Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度 ...

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

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

  6. go操作redis之go-redis,python操作redis之redis

    目录 go操作redis go-redis安装 连接方式 单机连接 TLS连接模式 Redis 集群连接 Redis 哨兵模式连接 基本使用 执行任意命令 redis.Nil zset操作 扫描或遍历 ...

  7. Python操作Redis的最佳实践

    目录 安装 redis 模块 Redis API 使用 连接方式 String 操作 按位操作的应用场景 Hash 操作 scan方法-用于获取大量的数据 List 操作 阻塞的pop方法 Set 集 ...

  8. python redis list操作_使用Python操作redis

    在使用python操作redis之前,需要先安装redis库: pip install redis. 创建连接方式: StrictRedis:实现大部分官方命令. Redis:是StrictRedis ...

  9. Windows下安装Redis及使用Python操作Redis的方法

    这篇文章主要介绍了Windows下安装Redis及使用Python操作Redis的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下 首先说一下在Windows下安装Redis,安装包可以在htt ...

最新文章

  1. [zz]Apache Thrift学习小记
  2. Linux下用 lsof 命令查找指定端口被哪个进程占用
  3. 并不对劲的loj2179:p3714:[BJOI2017]树的难题
  4. Double Strings
  5. MATLAB离散一维小波函数
  6. Qt使用invokeMethod反射机制实现进程间的通信
  7. 如何在CentOS 7上安装Percona XtraDB集群
  8. 执行pip安装的程序:command not found
  9. win10下Redis集群搭建的详细步骤
  10. 410. 分割数组的最大值
  11. 怎么用服务器跑matlab程序,服务器上跑matlab程序
  12. Excel高级应用高频使用函数汇总
  13. 【Python机器学习】梯度下降法(三) 优矿(uqer.io)
  14. Sentinel-1 GRD数据处理及其在水体信息提取中的应用
  15. 怎么把word文档免费转换成pdf文件
  16. EXCEPTION_ACCESS_VIOLATION异常
  17. 八泉峡明星旅游目的地系列推介会即将举行 蒋大为将现身助阵
  18. outlook撤回已发送邮件
  19. ~scanf()简析
  20. R语言 | 二分类和多分类的逻辑回归实现

热门文章

  1. andorid 全部对话框
  2. oracle 11g 的em启动不了
  3. USACO Shaping Regions(离散化)
  4. 计算机和路由器连接后IP地址受限制或无连接情况的处理
  5. 人工智能——面向对象表示法
  6. 去掉hyperlink下划线
  7. 收集一些有关SilverLight(WPF/E)的链接
  8. XML Programming with C# and .NET
  9. CentOS 7下启动、关闭、重启、查看MySQL服务
  10. react 自定义 TabBar 组件