Python利用flask操作Redis的方法詳解
使用 Flask 操作 Redis 可以通過安裝 Redis 的 Python 庫(kù)并在 Flask 中使用它來實(shí)現(xiàn)。
正式學(xué)習(xí)前,需要先確定 Redis 已安裝并可正常運(yùn)行
運(yùn)行 redis-server.exe redis.windows.conf 啟動(dòng) Redis 服務(wù)器
運(yùn)行 redis-cli.exe ping 檢查 Redis 服務(wù)器是否運(yùn)行正常
運(yùn)行 redis-cli.exe -h <host> -p <port> 連接 Redis 服務(wù)器
簡(jiǎn)單示例
安裝 Redis Python 庫(kù):
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", "夢(mèng)想橡皮擦") return redis_client.get("key").decode() if __name__ == "__main__": app.run(debug=True)
運(yùn)行代碼之后,可查看 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")
- 存儲(chǔ)列表:redis_client.lpush("list", "value1")
- 獲取列表:redis_client.lrange("list", 0, -1)
- 存儲(chǔ)字典:redis_client.hmset("dict", {"key1": "value1", "key2": "value2"})
- 獲取字典:redis_client.hgetall("dict")
使用 Redis 時(shí),需要注意它的數(shù)據(jù)類型,Redis 支持多種數(shù)據(jù)類型,如字符串、列表、字典等。
通過 Flask 存儲(chǔ)字符串、列表和字典
代碼如下:
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() # 存儲(chǔ)列表類型的數(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] # 存儲(chǔ)字典類型的數(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ù)中存儲(chǔ)和讀取這三種數(shù)據(jù)類型。最后,使用 jsonify() 函數(shù)將所有數(shù)據(jù)類型的值作為 JSON 響應(yīng)返回。
- 使用 redis_client.set() 方法向 Redis 中存儲(chǔ)了一個(gè)字符串類型的數(shù)據(jù),該數(shù)據(jù)的鍵為 “string_key”,值為 “Hello Redis”。
- 使用 redis_client.get() 方法讀取存儲(chǔ)在 Redis 中的字符串類型數(shù)據(jù),并使用 decode 方法將字節(jié)類型數(shù)據(jù)轉(zhuǎn)換為字符串類型。
- 使用 redis_client.lpush() 方法向 Redis 中存儲(chǔ)了一個(gè)列表類型的數(shù)據(jù),該數(shù)據(jù)的鍵為 “list_key”,值為 [“item1”, “item2”, “item3”]。
- 使用 redis_client.lrange() 方法讀取存儲(chǔ)在 Redis 中的列表類型數(shù)據(jù),并使用 decode 方法將字節(jié)類型數(shù)據(jù)轉(zhuǎn)換為字符串類型。
- 使用 redis_client.hmset() 方法向 Redis 中存儲(chǔ)了一個(gè)字典類型的數(shù)據(jù),該數(shù)據(jù)的鍵為 “dict_key”,值為 {“key1”: “value1”, “key2”: “value2”}。
- 使用 redis_client.hgetall() 方法讀取存儲(chǔ)在 Redis 中的字典類型數(shù)據(jù),并使用字典推導(dǎo)式將字節(jié)類型數(shù)據(jù)轉(zhuǎn)換為字符串類型。
運(yùn)行代碼效果圖如下所示。
到此這篇關(guān)于Python利用flask操作Redis的方法詳解的文章就介紹到這了,更多相關(guān)Python flask操作Redis內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于windows下pip安裝python模塊時(shí)報(bào)錯(cuò)總結(jié)
今天小編就為大家分享一篇基于windows下pip安裝python模塊時(shí)報(bào)錯(cuò)總結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-06-06Pandas數(shù)據(jù)形狀df.shape的實(shí)現(xiàn)
本文主要介紹了Pandas數(shù)據(jù)形狀df.shape的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07Python列表數(shù)據(jù)如何按區(qū)間分組統(tǒng)計(jì)各組個(gè)數(shù)
這篇文章主要介紹了Python列表數(shù)據(jù)如何按區(qū)間分組統(tǒng)計(jì)各組個(gè)數(shù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07Python Threading 線程/互斥鎖/死鎖/GIL鎖
這篇文章主要介紹了Python Threading 線程/互斥鎖/死鎖/GIL鎖的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-07-07對(duì)Python的Django框架中的項(xiàng)目進(jìn)行單元測(cè)試的方法
這篇文章主要介紹了對(duì)Python的Django框架中的項(xiàng)目進(jìn)行單元測(cè)試的方法,使用Django中的tests.py模塊可以輕松地檢測(cè)出一些常見錯(cuò)誤,需要的朋友可以參考下2016-04-04Python中的pandas庫(kù)簡(jiǎn)介及其使用教程
pandas是用于數(shù)據(jù)挖掘的Python庫(kù),Pandas中常見的數(shù)據(jù)結(jié)構(gòu)有Series和DateFrame兩種方式,今天通過本文給大家講解Python中的pandas庫(kù)簡(jiǎn)介及其使用,感興趣你跟隨小編一起學(xué)習(xí)吧2022-11-11python使用Windows的wmic命令監(jiān)控文件運(yùn)行狀況,如有異常發(fā)送郵件報(bào)警
這篇文章主要介紹了python使用Windows的wmic命令監(jiān)控文件運(yùn)行狀況,如有異常發(fā)送郵件報(bào)警的示例,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2021-01-01