python连接Redis,学习哈希表基本操作
需要redis安装的请看网址
(https://www.runoob.com/redis/redis-install.html)
python操作redis的第三方库叫“redis-py”。需要用python的pip命令来安装它,也可以在pycharm中添加需要的第三方库(https://www.cnblogs.com/thisyan/p/9671696.html)
安装完成后,打开python的交互环境测试安装结果:导入redis,如果不报错,则说明导入成功,导入成功意味着安装成功。
我们要在cmd 下载Redis包
命令:pip install redis
如果会出现黄色字体警告,你应该更新 Redis包,
python.exe -m pip install --upgrade pip
完成后进入python
输入import redis
表示完成
在pycharm 中连接redis
新的存储需求:对一系列存储的数据进行编组,方便管理,典型应用存储对象信息;
需要的存储结构:一个存储空间保存多个键值对数据;
Hash类型:底层使用哈希表结构实现数据存储。
散列表是可以存储多个键值对的映射,是无序的一种数据集合。键的内容必须是唯一的,不能重复。键内容中间可以采用类似“:”的隔离符号。特别适用于存储一个对象。
注意:
- 键内容的字符串不易过长
- 更适合对小规模数据结构对象的存储及操作。
- . Hash类型数据操作的注意事项
- Hash类型下的value只能存储字符串,不允许存储其他数据类型,不存在嵌套现象。如数据未获取到,对应的值为nil。
- 每个hash可以存储232-1个键值对
- Hash类型非常贴近对象的数据存储形式,并且可以灵活的删除对象属性。
- Hgetall操作可以获取所有属性,如果filed过多,遍历整体数据效率会很低,有可能成为数据访问的瓶颈。
import redis
h = redis.Redis(decode_responses=True)
'''
# 用连接池连接,是显示不了中文的
pool = redis.ConnectionPool(host = 'localhost',)
h = redis.Redis(connection_pool=pool)
'''h.hset('haxi','name','唐家三少') #建立单个键值对
h.hmset('haxi1',{'name1':'天蚕土豆','name2':'我吃西红柿','book':'斗罗大陆','price':33}) #建立多个键值对print('单个值:',h.hget('haxi1','name')) # 单个取hash的key对应的值
print("对应的值:",h.hmget('haxi1','name','name1','name2')) # 多个取hash的key对应的值
print("获取所有的键值对:",h.hgetall('haxi1')) #获取在哈希表中指定 key 的所有字段和值
print("哈希表中字段的数量:",h.hlen('haxi1')) #获取哈希表中字段的数量h.hmset('haxi2',{'name5':'烽火戏诸侯','book1':'仙逆'})
print("haxi2是否存在",h.exists('haxi2')) #查看哈希表 key 中,指定的字段是否存在。
print("删除haxi,haxi2:",h.hdel('haxi','haxi2')) # 删除一个或多个哈希表字段h.hsetnx('haxi1','number','no.123456') # 不存在时key,则➕
print("键key:",h.hkeys('haxi1')) # 取hash中所有的key
h.hincrby('haxi1','price',15) # 整数值加上增量 increment
print("键values:",h.hvals('haxi1')) # 取hash中所有的valueprint('迭代器:',h.hscan('haxi1',match ='n*'))
# 返回的每个元素都是一个元组,每一个元组元素由一个字段(field) 和值(value)组成。
python连接Redis,学习哈希表基本操作相关推荐
- Redis:哈希表HLEN、HSTRLEN、HINCRBY、HINCRBYFLOAT、HSCAN命令介绍
HLEN HLEN key 时间复杂度:O(1) 返回哈希表key中域的数量. 演示 当哈希表key不存在时,返回 0. HSTRLEN HSTRLEN key field 可用版本:>= 3. ...
- python连接redis集群如何释放内存_python 连接 redis cluster 集群
一. redis集群模式有多种, cluster模式只是其中的一种实现方式, 其原理请自行谷歌或者百度, 这里只举例如何使用Python操作 redis cluster 集群 二. python 连接 ...
- python连接redis数据库
python连接redis数据库 Python的第三方库 1. 初始化并创建连接 1.1 第一种方法 (连接池) 1.2 第二种方法 (普通) 2. 写入数据 2.1 向字符串中写入数据 2.2 设置 ...
- redis和mongdb的一些基本操作和命令以及使用python连接redis和mongdb
第一部分(基础题) 使用geo数据类型,添加北京.上海.武汉.广州.乌鲁木齐.拉萨六个城市的经纬度信息,连接Redis客户端实现以下命令(共计10分): 录入信息: 单条插入: 多条插入: 计算北京到 ...
- python连接redis有中文_Python连接Redis并操作
首先开启redis的外连 sch01ar@ubuntu:~$ sudo vim /etc/redis/redis.conf 把bind 127.0.0.1这行注释掉 然后重启redis sudo /e ...
- lvs增加并发连接,解决因为哈希表过小导致软中断过高问题
LVS,一个N久前就在使用的东西,目前来说配置什么的也没什么问题.只是个人觉得随着业务的上涨和流量的增加,它的连接数必然也会增长,所以在配置的时候就想直接把它改大. 在安装好后(Cento ...
- python连接redis sentinel集群
安装 python redis 客户端 pip install redis #!/usr/bin/env python # -*- coding:utf-8 -*-#!/usr/bin/env pyt ...
- 小结-python连接redis的基本配置-解决远程连接问题
确保linux系统上安装了redis 补安装过程 python安装redis模块 >安装模块 pip install redis >连接数据库 会具体的连接到某一个数据库 参考代码 imp ...
- python连接redis哨兵_python连接redis sentinel集群
#!/usr/bin/env python # -*- coding:utf-8 -*- #!/usr/bin/env python import redis from redis.sentinel ...
最新文章
- 中英字体不同导致的下划线不对齐问题
- 《王福朋petshop4.0视频教程》新浪视频(高清)
- Linux命令行下关机【Ubuntu】
- Python的__getattr__方法学习
- java 动态规划视频_157-动态规划算法解决背包问题1
- python波峰波谷算法_波动均分算法
- (原創) 如何使用C++/CLI读/写jpg檔? (.NET) (C++/CLI) (GDI+) (C/C++) (Image Processing)
- 前端学习(2031)vue之电商管理系统电商系统之创建新分支
- error C3646: “noexcept”: 未知重写说明符_三个世纪以来首次发现:大脑中还藏着一种未知的器官?...
- Java的结构之美【2】——销毁对象
- Linux系统下CMake的安装和使用
- bootice添加黑苹果引导_黑苹果OC(OpenCore)引导升级教程
- 银行热衷拿区块链专利 背后有何意图
- 大数据开发超高频面试题!大厂面试必看!包含Hadoop、zookeeper、Hive、flume、kafka、Hbase、flink、spark、数仓等
- Halium 9 尝鲜 -- 在小米平板4上的移植 (四)
- Java面试题2017版
- 如是言,一个关于格言的故事
- 中国网络创业的机遇与挑战
- 博弈论基础(acwing)
- 线上虚拟创意展厅设计
热门文章
- Python 绘制饼图时同时在每一块上显示数值和占比
- 简单搜索poj2251 3D迷宫(三维迷宫)
- HTML5制作通栏有点设计,12个鲜为人知的HTML 5设计小技巧
- java动态分区分配算法,操作系统_动态分区分配算法课程设计_java版
- 2345浏览器,2011年4月14号的V1.1, beta版本又这些新功能!
- 污水流量计的四种连接方式及仪表检测的方法
- STL(list容器)
- 【转贴】传说中的股市
- lucene辅助工具luke
- [转]IOS5添加全局英汉字典教程,ibooks,safari内可用