Python利用flask操作Redis的方法詳解
使用 Flask 操作 Redis 可以通過安裝 Redis 的 Python 庫并在 Flask 中使用它來實現(xiàn)。
正式學(xué)習(xí)前,需要先確定 Redis 已安裝并可正常運行
運行 redis-server.exe redis.windows.conf 啟動 Redis 服務(wù)器
運行 redis-cli.exe ping 檢查 Redis 服務(wù)器是否運行正常
運行 redis-cli.exe -h <host> -p <port> 連接 Redis 服務(wù)器
簡單示例
安裝 Redis Python 庫:
pip install redis
在 Flask 中使用:
from flask import Flask import redis app = Flask(__name__) redis_client = redis.Redis(host='localhost', port=6379, db=0) @app.route("/") def index(): redis_client.set("name", "夢想橡皮擦") return redis_client.get("key").decode() if __name__ == "__main__": app.run(debug=True)
運行代碼之后,可查看 Redis 中已經(jīng)成功寫入數(shù)據(jù)。
python flask 操作 Redis 更多內(nèi)容
操作 Redis 常見的方法還有
- 增加數(shù)據(jù):redis_client.incr("counter")
- 獲取數(shù)據(jù):redis_client.get("key")
- 設(shè)置數(shù)據(jù):redis_client.set("key", "value")
- 刪除數(shù)據(jù):redis_client.delete("key")
- 存儲列表:redis_client.lpush("list", "value1")
- 獲取列表:redis_client.lrange("list", 0, -1)
- 存儲字典:redis_client.hmset("dict", {"key1": "value1", "key2": "value2"})
- 獲取字典:redis_client.hgetall("dict")
使用 Redis 時,需要注意它的數(shù)據(jù)類型,Redis 支持多種數(shù)據(jù)類型,如字符串、列表、字典等。
通過 Flask 存儲字符串、列表和字典
代碼如下:
from flask import Flask, jsonify import redis app = Flask(__name__) redis_client = redis.Redis(host='localhost', port=6379, db=0) @app.route("/") def index(): # 設(shè)置字符串類型的數(shù)據(jù) redis_client.set("string_key", "Hello Redis") # 獲取字符串類型的數(shù)據(jù) string_value = redis_client.get("string_key").decode() # 存儲列表類型的數(shù)據(jù) redis_client.lpush("list_key", "item1", "item2", "item3") # 獲取列表類型的數(shù)據(jù) list_value = redis_client.lrange("list_key", 0, -1) list_value = [item.decode() for item in list_value] # 存儲字典類型的數(shù)據(jù) redis_client.hmset("dict_key", {"key1": "value1", "key2": "value2"}) # 獲取字典類型的數(shù)據(jù) dict_value = redis_client.hgetall("dict_key") dict_value = {k.decode(): v.decode() for k, v in dict_value.items()} # 返回響應(yīng) return jsonify({ "string_key": string_value, "list_key": list_value, "dict_key": dict_value }) if __name__ == "__main__": app.run(debug=True)
在代碼中,我們定義了三種不同的數(shù)據(jù)類型,分別為字符串、列表和字典,并在 Flask 視圖函數(shù)中存儲和讀取這三種數(shù)據(jù)類型。最后,使用 jsonify() 函數(shù)將所有數(shù)據(jù)類型的值作為 JSON 響應(yīng)返回。
- 使用 redis_client.set() 方法向 Redis 中存儲了一個字符串類型的數(shù)據(jù),該數(shù)據(jù)的鍵為 “string_key”,值為 “Hello Redis”。
- 使用 redis_client.get() 方法讀取存儲在 Redis 中的字符串類型數(shù)據(jù),并使用 decode 方法將字節(jié)類型數(shù)據(jù)轉(zhuǎn)換為字符串類型。
- 使用 redis_client.lpush() 方法向 Redis 中存儲了一個列表類型的數(shù)據(jù),該數(shù)據(jù)的鍵為 “list_key”,值為 [“item1”, “item2”, “item3”]。
- 使用 redis_client.lrange() 方法讀取存儲在 Redis 中的列表類型數(shù)據(jù),并使用 decode 方法將字節(jié)類型數(shù)據(jù)轉(zhuǎn)換為字符串類型。
- 使用 redis_client.hmset() 方法向 Redis 中存儲了一個字典類型的數(shù)據(jù),該數(shù)據(jù)的鍵為 “dict_key”,值為 {“key1”: “value1”, “key2”: “value2”}。
- 使用 redis_client.hgetall() 方法讀取存儲在 Redis 中的字典類型數(shù)據(jù),并使用字典推導(dǎo)式將字節(jié)類型數(shù)據(jù)轉(zhuǎn)換為字符串類型。
運行代碼效果圖如下所示。
到此這篇關(guān)于Python利用flask操作Redis的方法詳解的文章就介紹到這了,更多相關(guān)Python flask操作Redis內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于windows下pip安裝python模塊時報錯總結(jié)
今天小編就為大家分享一篇基于windows下pip安裝python模塊時報錯總結(jié),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-06-06Pandas數(shù)據(jù)形狀df.shape的實現(xiàn)
本文主要介紹了Pandas數(shù)據(jù)形狀df.shape的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07Python列表數(shù)據(jù)如何按區(qū)間分組統(tǒng)計各組個數(shù)
這篇文章主要介紹了Python列表數(shù)據(jù)如何按區(qū)間分組統(tǒng)計各組個數(shù),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-07-07Python Threading 線程/互斥鎖/死鎖/GIL鎖
這篇文章主要介紹了Python Threading 線程/互斥鎖/死鎖/GIL鎖的相關(guān)知識,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-07-07python使用Windows的wmic命令監(jiān)控文件運行狀況,如有異常發(fā)送郵件報警
這篇文章主要介紹了python使用Windows的wmic命令監(jiān)控文件運行狀況,如有異常發(fā)送郵件報警的示例,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2021-01-01