博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python操作Redis及连接方式
阅读量:5869 次
发布时间:2019-06-19

本文共 2066 字,大约阅读时间需要 6 分钟。

前沿:随着互联网的高速发展,数据变得越来越重要,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,116  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的name5     # where,BEFORE或AFTER6     # refvalue,标杆值,即:在它前后插入数据7     # value,要插入的数据

 

r.lset(name, index, value)

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

 

 

 

r.lrem(name, value, num)

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

 

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

你可能感兴趣的文章
maven配置jdk1.8环境
查看>>
巧用for循环
查看>>
创建LocalSessionFactory对象
查看>>
linux安装c/c++ man pages
查看>>
tcp 连接的11种状态
查看>>
POJ 2195 Going Home 题解 《挑战程序设计竞赛》
查看>>
POJ 3415 Common Substrings 题解《挑战程序设计竞赛》
查看>>
再谈javascriptjs原型与原型链及继承相关问题
查看>>
Maximizing Battery Life
查看>>
ActiveMQ(10):ActiveMQ的静态网络链接
查看>>
多线程编程(2) - 从 CreateThread 说起
查看>>
给在生产环境下给php安装apc加速扩展脚本
查看>>
ini 文件操作记要(1): 使用 TIniFile
查看>>
再学 GDI+[33]: TGPPen - 画笔的几何变换 - SetTransform
查看>>
我的友情链接
查看>>
c#对字符串的各种操作
查看>>
jstat命令详解
查看>>
as3.0 切分位图
查看>>
Oracle维护命令合集
查看>>
zabbix监控部署
查看>>