python3学习(十二)--操作redis
string类型写redis
import redis ip = 'xx.xx.x.x' password = 'xxx' #decode_responses 返回的二进制数据直接decode 二进制转字符串 r = redis.Redis(host=ip,password=password,port=6379,db=1) res = r.get('test1023') print(res)#打印结果为:b'test'。代表二进制内容。若redis.Redis(host=ip,password=password,port=6379,db=1,decode_responses=True),则直接打印字符串。 print(r.get('test102301:haha')) print(r.hgetall('test102302')) print(type(r.hgetall('test102302'))) print(r.hget('test102302','testvalue01')) s = 'ss' print(s.encode())#字符串变成bytes类型,二进制类型 print(res.decode())#decode 二进制转字符串 # #r.flushdb()#删除这个数据库里面所有的key r.set('1023','adda123',60)#新增和修改都是它,指定失效时间 r.delete('lhz:os')#删除指定的key #文件夹 r.set('ce1023:1os','listdir,path') res = r.get('ce1023:1os') print(res) print(r.keys('ce1023*'))#获取所有的key
哈希类型写redis
#哈希类型 hash类型 #二层字典 ip = '118.24.3.40' password = 'HK139bc&*' r = redis.Redis(host=ip, password=password, port=6379, db=1) session = { "lw1":{'sex':'男','age':18}, "lw2":{'sex':'男','age':19}, } token = { "sjw":{'sex':'男','age':18}, "sjw2":{'sex':'男','age':18}, } r.hset('jnz_lw','yanfafaaf','dadedeede')#新增 res = r.hget('jnz_lw','yanfafaaf')#指定获取里面小key的值 print(res) # r.hdel('jnz_lw','yanfafaaf')#删除指定的小key # r.delete('jnz_lw')#删除大key res = r.hgetall('jnz_stus')#获取大key里面所有的数据 print(res) print(type(res)) new = {} # 1、先循环res # 2、k和v decode一下 然后放到new这个字典里面 session = { "lw1":{'sex':'男','age':18}, "lw2":{'sex':'男','age':19}, } for k ,v in res.items(): new[k.decode()]=v.decode() print('=====下面是转完之后的') print(type(new)) print(new)