python 操作 Redis

string类型

import redis
r = redis.Redis(host='118.xx.x.xx',password='xxxxxxxx',db=1,port=6379)
#增删改查
r.set('pzp','6666') #在数据库新增key,value
r.set('key','helloworld') #修改也是set
r.delete('pzp') #删除一个值
r.setex('pzp','helloworld',10) #新建key:pzp,10秒后失效  TTL为-1时,永久生效,其他数字为剩下秒数。
pzp = r.get('aiya')  #get到的是二进制
print(pzp.decode())   #把二进制转换成字符串,注意字符串不能为空,否则报错:AttributeError: 'NoneType' object has no attribute 'decode'
print(r.keys('pzp'))
res = r.keys()
print(r.keys())  #获取到所有的key
print(r.keys('*'))  #获取到所有的key
print(r.keys('niu*'))  #获取到niu开头的key
print(r.keys('*z*'))  #获取到中间有z的key
r.set('joseph:today','aaa','joseph:tomorrow','bbb')
r.set('文件夹:key','value')
r.set('joseph:20180507','aaaa')
r.set('joseph:20180508','bbbb')

for k in r.keys():  #删除所有key
    r.delete(k)

r.flushdb() #删除所有key

 哈希类型 

r.hset('myself','aaa','20180505')   #添加哈希类型
r.hset('myself','joseph','abcdaegggg')
r.hset('myself','joseph2','这是一个呃')
# 查看类型
print(r.type('myself'))
print(r.type('jd'))
res = r.hget('myself','pzp').decode()   #取到哈希中的某一个key
print(res)
print(r.hget('stu_info','张流量').decode())    #取到哈希中的某一个key
res = r.hgetall('myself') #获取所有key
print(res)
for k,v in res.items():
    print(k.decode(),v.decode())

res = r.hgetall('stu_info') #获取所有key
new_info = {}
for k,v in res.items():
    new_info[k.decode()] = v.decode()
print(new_info)

r.hdel('stu_info','gyx')    #删除指定的key
r.delete('stu_info')    #删除整个key
r.expire('str_info1',100)   #设置失效时间
print(r.ttl('str_info1'))   #获取失效时间

  

猜你喜欢

转载自www.cnblogs.com/pengzhuopeng/p/9027217.html
今日推荐