Redis与Python交互怎么实现

这篇文章主要介绍了redis与Python交互怎么实现的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Redis与Python交互怎么实现文章都会有所收获,下面我们一起来看看吧。

创新互联公司是一家集做网站、网站设计、网站页面设计、网站优化SEO优化为一体的专业网络公司,已为成都等多地近百家企业提供网站建设服务。追求良好的浏览体验,以探求精品塑造与理念升华,设计最适合用户的网站页面。 合作只是第一步,服务才是根本,我们始终坚持讲诚信,负责任的原则,为您进行细心、贴心、认真的服务,与众多客户在蓬勃发展的市场环境中,互促共生。

1. Python 库安装

联网安装

pip install redis

使用源码安装

到中文官网查找客户端代码

unzip redis-py-master.zip
cd redis-py-master
python setup.py install

2. 交互代码范例

 1 import redis 2  3  4 # 1.连接 Redis 服务器 5 try: 6     r=redis.StrictRedis(host='localhost', port=6379) 7 except Exception as e: 8     print(e.message) 9 10 # 2.读写数据11 # 方式一:根据数据类型的不同,调用相应的方法,完成读写12 r.set('name','hello')  # 设置 string 数据13 r.get('name')  # 读取 string 数据14 15 # 方式二:使用 pipline16 # 缓冲多条命令,然后一次性执行,减少数据传输频率,从而提高效率17 pipe = r.pipeline()18 pipe.set('name', 'world')19 pipe.get('name')20 pipe.execute()

3. Redis 操作封装

  • 连接 Redis 服务器部分是一致的。

  • 将 String 类型的读写进行封装。

 1 import redis 2  3  4 # Redis 工具类 5 class RedisTool(): 6     7     # 初始化连接 Redis 8     def __init__(self, host='localhost', port=6379): 9         self.__redis = redis.StrictRedis(host, port)10        11     # 读取 String 值12     def get(self, key):13         if self.__redis.exists(key):  # 如果键存在14             return self.__redis.get(key)15         else:  # 否则返回空值16             return ""17 18     # 设置 String 键值       19     def set(self, key, value):20         self.__redis.set(key, value)

4. 应用范例:用户登录

业务过程如下:

  1. 输入用户名、密码

  2. 密码加密

  3. 判断 Redis 中是否记录了用户名,如果有则成功

  4. 如果 Redis 中没有用户名,则到 MySQL 中查询

  5. 从 Mysql 中查询成功后,将用户名记录到 Redis 中

 1 from t2 import RedisTool 2 from t3 import MysqlTool 3 import hashlib 4  5  6 name=input("请输入用户名:") 7 pwd=input("请输入密码:") 8  9 # 密码加密10 sha1=hashlib.sha1()11 sha1.update(pwd)12 pwd1=sha1.hexdigest()13 14 # 判断 Redis 中是否存在该用户信息的缓存数据15 try:16     redis=RedisTool()17     if redis.get('uname') == name:18         print('ok')19     # 不存缓存,则走数据库进行用户信息校验20     else:21         mysql = MysqlTool('localhost', 3306, 'test1', 'root', 'mysql')22         upwd = mysql.get_one('select upwd from userinfos where uname=%s', [name])23         if upwd == None:24             print('用户名错误')25         elif upwd[0] == pwd1:26             redis.set('uname', name)  # 用户信息校验通过,则写入缓存27             print('登录成功')28         else:29             print("密码错误")30 except Exception as e:31     print(e.message)

关于“Redis与Python交互怎么实现”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Redis与Python交互怎么实现”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注创新互联行业资讯频道。


分享标题:Redis与Python交互怎么实现
网站URL:http://pwwzsj.com/article/pehedd.html