溫馨提示×

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

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

python中redis如何實(shí)現(xiàn)連接及相關(guān)操作

發(fā)布時(shí)間:2021-08-05 11:11:43 來源:億速云 閱讀:145 作者:小新 欄目:開發(fā)技術(shù)

小編給大家分享一下python中redis如何實(shí)現(xiàn)連接及相關(guān)操作,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

redis簡(jiǎn)介

Redis是一個(gè)開源的使用ANSIC語言編寫、支持網(wǎng)絡(luò)、可基于內(nèi)存亦可持久化的日志型、Key-Value數(shù)據(jù)庫(kù),并提供多種語言的API。是一個(gè)非關(guān)系型數(shù)據(jù)庫(kù),經(jīng)常會(huì)用作緩存,消息中間件的操作

redis優(yōu)勢(shì)

  • 速度快,因?yàn)閿?shù)據(jù)存在內(nèi)存中

  • 支持豐富數(shù)據(jù)類型,支持字符串,哈希表,列表,集合,有序集合

  • 支持事務(wù),操作都是原子性

  • 豐富的特性:可用于緩存,消息,按key設(shè)置過期時(shí)間,過期后將會(huì)自動(dòng)刪除

1、redis連接、及存取值

import redis
r = redis.Redis(host='192.168.2.22',port=6379,db=2,password= 'redis')
r.set('name','Delia')    # 在redis里面放置對(duì)應(yīng)的key,value
v = r.get('name')      # 獲取key值對(duì)應(yīng)的value值
print(v)

redis-py使用connection pool來管理對(duì)一個(gè)redis server的所有連接,避免每次建立、釋放連接的開銷。

默認(rèn),每個(gè)Redis實(shí)例都會(huì)維護(hù)一個(gè)自己的連接池??梢灾苯咏⒁粋€(gè)連接池,然后作為參數(shù)Redis,這樣就可以實(shí)現(xiàn)多個(gè)Redis實(shí)例共享一個(gè)連接池。

import redis
pool = redis.ConnectionPool(host='192.168.2.22', port=6379, db=2, password='redis')
r = redis.Redis(connection_pool=pool)
r.set('name','Delia')    # 在redis里面放置對(duì)應(yīng)的key,value
v = r.get('name')      # 獲取key值對(duì)應(yīng)的value值
print(v)

輸出結(jié)果里面的b代表的是二進(jìn)制

 2、批量存取值

import redis
pool = redis.ConnectionPool(host='192.168.2.22', port=6379, db=2, password='redis')
r = redis.Redis(connection_pool=pool)
r.mset({'name':'Delia','age':'18'})   # mset(mapping=''),批量設(shè)置值 {k1 = '' ,k2 = ''}
v = r.mget({'name','age'}) # 批量獲取值
print(v)

輸出結(jié)果:

[b'Delia', b'18']

3、存取value的某個(gè)范圍

import redis
pool = redis.ConnectionPool(host='192.168.2.22', port=6379, db=2, password='redis')
r = redis.Redis(connection_pool=pool)
r.set('name','Delia1234')
r.setrange('name',4,'00')   #setrange(name,offset,value)修改字符串內(nèi)容,從指定位置開始替換
v = r.getrange('name',4,5) #getrange(key,start,end)獲取子序列
print(v)

輸出結(jié)果:

b'00'

4、在value中追加內(nèi)容

import redis
pool = redis.ConnectionPool(host='192.168.2.22', port=6379, db=2, password='redis')
r = redis.Redis(connection_pool=pool)
r.set('name','Delia1234')
r.append('name','aaa')   #append(key,value)在redis name對(duì)應(yīng)的值后面追加內(nèi)容
v = r.get('name') 
print(v)

輸出結(jié)果:

b'Delia1234aaa'

以上是“python中redis如何實(shí)現(xiàn)連接及相關(guān)操作”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI