Python基础学习六 操作Redis

 1 import redis
 2 r = redis.Redis(host='211.149.xxx.xx',port=6379,password='123456',db=1)
3 #set get delete setex 都是针对string类型的 k-v 4 # r.set('louis_session','201801211234') #set数据 5 # print(r.get('louis_session').decode()) #redis里面取出来的数据都是bytes类型的,所以要用decode方法转成字符串 6 # r.delete('louis_session') #删除信息 7 # r.setex('louis','123123',20) #可以指定key的失效时间,单位是秒

8 #hash类型 9 #插入数据 10 # r.hset('session_louis','louis_1','111') 11 # r.hset('session_louis','louis_2','222') 12 # r.hset('session_louis','louis_3','333')

13 #获取数据 14 # res = r.hget('session_louis','louis_3') #获取数据 15 # print(res)
16 # res1 = r.hgetall('session_louis') #获取到hash类型里面所有的数据 17 # # print(res1) 18 # all_data = {} 19 # for k,v in res1.items(): 20 # k = k.decode() 21 # v = v.decode() 22 # all_data[k]=v 23 # print(res1) 24 # print(all_data)

25 #给txz这个key加一个分类文件夹homework 26 # r.set('txz:homework:louis1','没交') 27 # r.set('txz:homework:louis2','交了') 28 # print(r.keys())#获取所有的key 29 # print(r.keys('txz*')) #以txz开头的key 30 # print(r.type('session')) #获取key的类型

 

redis迁移

 1 import redis
 2 
 3 src_redis = redis.Redis(host='211.149.xxx.16',port=6379,password='123456',db=2)#连上redis
 4 target_redis = redis.Redis(host='211.149.xxx.16',port=6379,password='123456',db=14)#连上redis
 5 for key in src_redis.keys():
 6     if src_redis.type(key) == b'string':  #判断key的类型,因为redis数据取出来都是二进制的,所以这里也用bytes
 7         v = src_redis.get(key) #先获取到原来的数据
 8         target_redis.set(key,v) #再set到新的里面
 9     else:
10         all_hash_data = src_redis.hgetall(key)   #先获取到hash类型里面所有的数据
11         for k,v in all_hash_data.items(): #因为hash类型的获取到之后是一个字典,所以这里循环字典
12             target_redis.hset(key,k,v)  #key是外面的大key,k是里面的小k,v就是小k对应的value

 

posted on 2018-01-25 10:41  louis_w  阅读(163)  评论(0编辑  收藏  举报

导航