1. Python 库安装
2. 交互代码范例
3. Redis 操作封装
4. 应用范例:用户登录
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 # 方式二:使用 pipline 16 # 缓冲多条命令,然后一次性执行,减少数据传输频率,从而提高效率 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 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)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。