当前位置: 首页 > news >正文

Python处理Redis

操作Redis

redis也是基于tcp通信的,所以我们可以直接通过socket来做

Redis通信过程

简单使用

redis-cli.exe -h192.168.56.188
auth 123456
set name myredis
get name
lindex students 0		# 查看students列的第一条数据

核心协议体

*2			# 表示下述的指令由2个字符串构成
$4			# 代表后续的字符串长度为4
auth
$6			# 代表后续的字符串长度为6
123456*3
$3
set
$4
name
$5
myredis
代码演示

接下来我们就可以自己来建立一个socket连接(原生协议)

import socket
s=socket.socket()
s.connect(('192.168.56.188',6379))
# \r\n是协议中的标准化换行
s.send('*2\r\n$4\r\nauth\r\n$6\r\n123456\r\n'.encode())
print(s.recv(1024).decode())
# 登陆成功后我们还可以构造一个设置变量的数据包
time.sleep(1)
s.send('*3\r\n$3\r\nset\r\n$4\r\nname\r\n$7\r\nmyredis\r\n'.encode())
print(s.recv(1024).decode())
time.sleep(1)
s.send('*2\r\n$3\r\nget\r\nname\r\n'.encode())		# myredis
reply=s.recp(1024)
print(reply.decode())

直接引用第三方库:redis

import redis
# db=0	代表我们选择默认使用第一个数据库
red=redis.Redis(host='192.168.56.188',port=6379,password='123456',db=0)
# redis中的命令set addr chengdu
red.set('addr','chengdu')
# redis中的命令get addr
print(red.get('addr').decode())
# redis中的命令:rpush students zhangsan lisi wangwu
red.rpush('students','zhaoliu')
# 不难看出该库中的方法与redis中的命令一致
http://www.lryc.cn/news/416569.html

相关文章:

  • nodejs多版本随心切换-windows
  • json文件格式
  • 日撸Java三百行(day15:栈的应用之括号匹配)
  • Oracle-OracleConnector
  • 『 Linux 』线程池与 POSIX 线程的封装编码实现
  • 【C++】————哈希表
  • 前端学习AI历程
  • 常见中间件漏洞复现之【Tomcat】!
  • C++并发编程(一):线程基础
  • enq: HW - contention事件来啦
  • MyBatis补充
  • 系统架构师(每日一练16)
  • 实践致知第17享:电脑忽然黑屏的常见原因及处理方法
  • 微信小程序--实现地图定位---获取经纬度
  • 【Python系列】使用 `isinstance()` 替代 `type()` 函数
  • 【多模态大模型】 BLIP-2 in ICML 2023
  • HPC高性能计算平台
  • 前端常用的几个工具网站
  • 支付功能之代收代付
  • QPixmap
  • Laravel门面之下:构建自定义门面应用的艺术
  • 智启万象 | 2024 Google 开发者大会直播攻略
  • 技巧:print打印内容到控制台时信息显示不全
  • 3.表的操作
  • AI回答:C#项目编译后生成部分文件的主要职责
  • RPC通信的简单流程
  • 前端发版(发包)缓存,需要强制刷新问题处理
  • 洛谷练习(8.4/8.5)
  • DLMS/COSEM中的信息安全:加密算法(下)1
  • ES6中的Promise、async、await,超详细讲解!