iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python怎么使用redis模块来跟redis实现交互
  • 322
分享到

python怎么使用redis模块来跟redis实现交互

2023-07-02 14:07:59 322人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

本篇内容主要讲解“python怎么使用redis模块来跟Redis实现交互”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python怎么使用redis模块来跟redis实现交互”吧!redis模

本篇内容主要讲解“python怎么使用redis模块来跟Redis实现交互”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习Python怎么使用redis模块来跟redis实现交互”吧!

    redis模块的使用

    1.安装模块

    pip3 install redis

    2.导入模块

    import redis

    连接方式

    • 严格连接模式:r=redis.StrictRedis(host=“”,port=)

    • 更Python化的连接模式:r=redis.Redis(host=“”,port=)

    • StrictRedis用于实现大部分官方的命令,并使用官方的语法和命令

    • Redis与StrictRedis的区别是:Redis是StrictRedis的子类,用于向前兼容旧版本的redis-py,并且这个连接方式是更加"python化"的

    4.连接池

    为了节省资源,减少多次连接损耗,连接池的作用相当于总揽多个客户端与服务端的连接,当新客户端需要连接时,只需要到连接池获取一个连接即可,实际上只是一个连接共享给多个客户端。

    import redispool= redis.ConnectionPool(host='localhost',port=6379,decode_responses=True)r=redis.Redis(connection_pool=pool)r2=redis.Redis(connection_pool=pool)r.set('apple','a')print(r.get('apple'))r2.set('banana','b')print(r.get('banana'))print(r.client_list())print(r2.client_list())#可以看出两个连接的id是一致的,说明是一个客户端连接

    5.操作

    • 值的设置和获取,可以参考redis的命令,redis模块中的对应功能的函数名基本与redis中的一致

    • 注意默认情况下,设置的值或取得的值都为bytes类型,如果想改为str类型,需要在连接时添加上decode_responses=True】

    • 设置值:

    redis中set()  ==>r.set()redis中setnx()  ==>r.set()redis中setex() ==>r.setex()redis中setbit()  ==>r.setbit()redis中mset()  == > r.mset()redis中hset()  ==>r.hset()redis中sadd() == >r.sadd()#其他。。。基本redis的命令名与redis模块中的函数名一致

    获取:

    redis中get() ==》r.get()redis中mget() ==》r.mget()redis中getset() ==》r.getset()redis中getrange() ==》r.getrange()#其他。。。基本redis的命令名与redis模块中的函数名一致
    import redisr=redis.Redis(host='localhost',port=6379,decode_responses=True)# r=redis.StrictRedis(host='localhost',port=6379)r.set('key','value')value=r.get('key')# print(type(value))print(value)r.hset('info','name','lilei')r.hset('info','age','18')print(r.hgetall('info'))r.sadd('course','math','english','chinese')print(r.smembers('course'))

    管道

    一般情况下,执行一条命令后必须等待结果才能输入下一次命令,管道用于在一次请求中执行多个命令。

    参数介绍:

    transaction:指示是否所有的命令应该以原子方式执行。

    import redis,timer=redis.Redis(host="localhost",port=6379,decode_responses=True)pipe=r.pipeline(transaction=True)pipe.set('p1','v2')pipe.set('p2','v3')pipe.set('p3','v4')time.sleep(5)pipe.execute()

    事务

    python中可以使用管道来代替事务:

    补充:监视watch:pipe.watch()

    import redis,timeimport redis.exceptionsr=redis.Redis(host='localhost',port=6379,decode_responses=True)pipe=r.pipeline()print(r.get('a'))try:    # pipe.watch('a')    pipe.multi()    pipe.set('here', 'there')    pipe.set('here1', 'there1')    pipe.set('here2', 'there2')    time.sleep(5)    pipe.execute()except redis.exceptions.WatchError as e:    print("Error")

    订阅\发布

    发布方:

    import redisr=redis.Redis(host="localhost",port=6379,decode_responses=True)#发布使用publish(self, channel, message):Publish ``message`` on ``channel``.Flag=Truewhile Flag:    msg=input("主播请讲话>>:")    if len(msg)==0:        continue    elif msg=='quit':        break    else:        r.publish('cctv0',msg)

    订阅方:

    当订阅成功后,第一次接收返回的第一个消息是一个订阅确认消息:

    python怎么使用redis模块来跟redis实现交互

    import redisr=redis.Redis(host="localhost",port=6379,decode_responses=True)#发布使用publish(self, channel, message):Publish ``message`` on ``channel``.Flag=Truechan=r.pubsub()#返回一个发布/订阅对象msg_reciver=chan.subscribe('cctv0')#订阅msg=chan.parse_response()#第一次会返回订阅确认信息print(msg)print("订阅成功,开始接收------")while Flag:    msg=chan.parse_response()#接收消息    print(">>:",msg[2])#此处的信息格式['消息类型', '频道', '消息'],所以使用[2]来获取

    到此,相信大家对“python怎么使用redis模块来跟redis实现交互”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

    --结束END--

    本文标题: python怎么使用redis模块来跟redis实现交互

    本文链接: https://www.lsjlt.com/news/342409.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    本篇文章演示代码以及资料文档资料下载

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档
    猜你喜欢
    • python怎么使用redis模块来跟redis实现交互
      本篇内容主要讲解“python怎么使用redis模块来跟redis实现交互”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python怎么使用redis模块来跟redis实现交互”吧!redis模...
      99+
      2023-07-02
    • Spring中怎么实现响应式Redis交互
      今天小编给大家分享一下Spring中怎么实现响应式Redis交互的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。本文将模拟一个...
      99+
      2023-06-05
    • 怎么使用Python交互模式
      这篇文章主要讲解了“怎么使用Python交互模式”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用Python交互模式”吧!默认情况下,Python 源文件是 UTF-8 编码。你也可以...
      99+
      2023-06-02
    • Python redis模块的使用教程指南
      目录1.安装模块2.连接池3.Redis 基本命令 String4.redis 基本命令 hash5.redis基本命令 list6.redis基本命令 set7.其他常用操作8.管道1.安装模块 python 要使用 ...
      99+
      2024-04-02
    • Pytho的HTTP交互httpx包模块怎么使用
      本篇内容介绍了“Pytho的HTTP交互httpx包模块怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Python 的 h...
      99+
      2023-06-29
    • Python redis模块的使用教程指南
      目录1.安装模块2.连接池3.redis 基本命令 String4.redis 基本命令 hash5.redis基本命令 list6.redis基本命令 set7.其他常用操作8.管...
      99+
      2024-04-02
    • Python利用pyreadline模块实现交互式命令行开发
      目录一、pyreadline模块概述二、pyreadline模块安装三、pyreadline模块基本使用四、pyreadline模块高级用法五、总结交互式命令行是一种方便用户进行交互...
      99+
      2023-05-19
      Python交互式命令行开发 Python交互式命令行 Python 命令行
    • 怎么用SpringBoot+Redis实现重复提交
      本篇内容介绍了“怎么用SpringBoot+Redis实现重复提交”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在实际的开发项目中,一个对外...
      99+
      2023-06-16
    • 使用CSS3来代替JS实现交互
      这篇文章给大家分享的是有关使用CSS3来代替JS实现交互的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。【CSS3和JS】对于CSS了解的同学都知道,CSS的实现是最底层的,在实现方式和性能上都不是,JS这种提供接...
      99+
      2023-06-08
    • Redis怎么使用HyperLogLog实现
      这篇文章主要介绍“Redis怎么使用HyperLogLog实现”,在日常操作中,相信很多人在Redis怎么使用HyperLogLog实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Redis怎么使用Hype...
      99+
      2023-06-30
    • python语音交互怎么实现
      要实现Python语音交互,可以使用第三方库SpeechRecognition。首先,需要安装SpeechRecognition库。...
      99+
      2023-08-31
      python
    • 浅谈Python安装并使用redis模块的方法
      这篇文章给大家分享的是有关浅谈Python安装并使用redis模块的方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。安装和使用安装安装redis模块pip3 inst...
      99+
      2024-04-02
    • 怎么使用mysql模拟redis
      这篇文章主要介绍“怎么使用mysql模拟redis”,在日常操作中,相信很多人在怎么使用mysql模拟redis问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么使用mysql模拟redis”的疑惑有所帮助!...
      99+
      2023-06-27
    • Python使用Paramiko模块实现
      paramiko是用python写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。利用该模块,可以方便的进行ssh连接和sftp协议进行sftp文件传输以及远程命令执行。 通过安装包安装: wget ...
      99+
      2023-01-31
      模块 Python Paramiko
    • PHP中使用Redis实现模式匹配
      在 web 开发中,Redis 已经成为了非常流行的缓存和数据库,而 PHP 也是广泛使用的 web 开发语言。结合这两者,我们可以在 PHP 中使用 Redis 来实现模式匹配的功能,极大地提高了网站的性能和用户体验。Redis 是一款基...
      99+
      2023-05-15
      PHP redis 模式匹配
    • 使用SpringBoot怎么对Redis进行集成来实现缓存
      本篇文章给大家分享的是有关使用SpringBoot怎么对Redis进行集成来实现缓存,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Redis简介Redis 是一个开源(BSD许...
      99+
      2023-05-31
      springboot redis
    • Flume的事件交互模型怎么实现
      Flume是一个分布式、可靠和高可用的大数据处理系统,其事件交互模型是基于三个主要组件实现的:source、channel和sink...
      99+
      2024-04-02
    • Redis的集群模式怎么实现
      Redis的集群模式可以通过搭建多个Redis实例,并将它们组成一个集群来实现。在Redis的集群模式中,每个Redis实例都可以独...
      99+
      2024-05-07
      Redis
    • 怎么使用redis实现session功能
      这篇文章主要介绍怎么使用redis实现session功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!我们来简单介绍下redis。Redis(Remote Dictionary Se...
      99+
      2024-04-02
    • Redis中的GEO地理位置模块怎么用
      这篇文章主要介绍了Redis中的GEO地理位置模块怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。GEO是 Redis 在3.2版本之后...
      99+
      2024-04-02
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作