【Python】學習筆記5-操作redis資料庫redis

來源:互聯網
上載者:User

標籤:添加   資料庫   bsp   判斷   學習筆記   取出   字串   連結   開頭   

import redis
# 1、set get setex delete都是針對值是字串類型進行操作
r = redis.Redis(host=‘x.x.x.x‘,port = 6379,password = ‘123456‘,db = 1)# r.set(‘am_session‘,‘20122222222‘) #set資料,增加一條資料# print(r.get(‘am_session‘).decode()) #get資料,redis取出的資料都是bytes類型的,所以要用decode方法轉化成字串# # r.delete(‘cm_session‘)# r.setex(‘am_ssss‘,‘chenmeng‘,10) #建立一條資料,可以指定key的失效時間,單位是秒

#
# # 2、hash類型set、get資料的方式:一個session,類似字典,不同key對應不同的值
1 # r.hset(‘cmsessions‘,‘cm‘,‘1‘)2 # r.hset(‘cmsessions‘,‘cm1‘,‘12‘)3 # r.hset(‘cmsessions‘,‘cm2‘,‘123‘)4 # # print(r.hget(‘cmsessions‘,‘cm2‘).decode()) #擷取hash類型某個key的資料5 # # redis_data = r.hgetall(‘cmsessions‘) # 擷取hash類型的所有資料,返回字典,但是裡面都是二進位:{b‘cm‘: b‘1‘, b‘cm2‘: b‘123‘, b‘cm1‘: b‘12‘}6 # #

# # #解析hash類型中的位元據,都換成正常字串
x
1 # r.hset(‘cmsessions‘,‘cm‘,‘1‘)2 # r.hset(‘cmsessions‘,‘cm1‘,‘12‘)3 # r.hset(‘cmsessions‘,‘cm2‘,‘123‘)4 # # print(r.hget(‘cmsessions‘,‘cm2‘).decode()) #擷取hash類型某個key的資料5 # # redis_data = r.hgetall(‘cmsessions‘) # 擷取hash類型的所有資料,返回字典,但是裡面都是二進位:{b‘cm‘: b‘1‘, b‘cm2‘: b‘123‘, b‘cm1‘: b‘12‘}6 # #
#
# #hash類型沒有到期時間
#
#
# # 3.如果需要在檔案夾中添加session,帶冒號,多個層級的檔案夾多個冒號即可
# r.set(‘cm:am_session‘,‘20122222222‘)
#
#
# # 4.擷取所有的key
# print(r.keys()) #擷取所有的key
# print(r.keys(‘cm*‘)) #擷取所有以cm開頭的key
# print(r.type(‘cmsessions‘)) #擷取所有kye的類型,hash類型是:b‘hash‘,普通傳回型別是b‘string‘

#5.db2中所有的key遷移到db8
#a 建立兩個redis連結
#b 擷取所有的key,返回b開頭的byte類型,所有判斷類型的時候,b‘string‘
#c 判斷key的類型,string hash
 1 # src_redis = redis.Redis(host=‘X.x.x.x‘,port = 6379,password = ‘123456‘,db = 4) 2 # target_redis = redis.Redis(host=‘X.x.x.x‘,port = 6379,password = ‘123456‘,db = 3) 3 # for key in src_redis.keys(): #[b‘session3‘, b‘wy:wy1:wy2‘, b‘session_wy‘, b‘wangyan‘] 4 #     if src_redis.type(key) == b‘string‘: 5 #         v = src_redis.get(key) 6 #         target_redis.set(key,v) 7 #     else: #hash類型處理 8 #         all_hash_data = src_redis.hgetall() 9 #         for k,v in all_hash_data.item():10 #             target_redis.hset(key,k,v)

 

【Python】學習筆記5-操作redis資料庫redis

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.