溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Redis與Python交互怎么實現

發布時間:2022-03-29 16:04:19 來源:億速云 閱讀:162 作者:iii 欄目:移動開發

這篇文章主要介紹了Redis與Python交互怎么實現的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Redis與Python交互怎么實現文章都會有所收獲,下面我們一起來看看吧。

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交互怎么實現”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女