redis不同数据返回类型读取

错误描述

Traceback (most recent call last):
  File "C:\Users\C\Desktop\ruby\py\conmysql.py", line 45, in <module>
    s = rrr.get("asqwerty0000001d3625bafa0da9ea:fd0324430000002af1314589f9a7534c:GEK6510058:statusVal")
  File "D:\Python27\lib\site-packages\redis\client.py", line 880, in get
    return self.execute_command('GET', name)
  File "D:\Python27\lib\site-packages\redis\client.py", line 573, in execute_command
    return self.parse_response(connection, command_name, **options)
  File "D:\Python27\lib\site-packages\redis\client.py", line 585, in parse_response
    response = connection.read_response()
  File "D:\Python27\lib\site-packages\redis\connection.py", line 582, in read_response
    raise response
ResponseError: WRONGTYPE Operation against a key holding the wrong kind of value


返回的数据类型不是字符串,却用了get方法

1、字符串

# ex过期时间 单位秒S
 r.set('name', 'Jack', ex=20)
 rst = r.get('name')
 print(rst)
 
 
 结果: "Jack"
2、列表 -list

r.lpush('object', 'one')
 r.lpush('object', 'two')
 r.lpush('object', 'three')
 r.lpush('object', 'four')
 r.lpush('object', 'five')
 r.lpush('object', 'six')
 ret = r.lrange('object', 0, 5)
 print(ret[::-1], len(ret))
   
  
 结果: ['one', 'two', 'three', 'four', 'five', 'six']  6
3、hash类型

r.hset('user:info', 'name', 'Jack')
 r.hset('user:info', 'age', 20)
 r.hset('user:info', 'phone', '18712909999')
 r.hset('user:info', 'email', '[email protected]')
 rst = r.hgetall('user:info')
 print(rst)


 结果: {'age': '20', 'email': '[email protected]', 'name': 'Jack', 'phone': '18712909999'}
4、集合类型 -set

r.sadd('set', 'one')
 r.sadd('set', 'two')
 r.sadd('set', 'three')
 res = r.smembers('set')
 print(res)


 结果: {'two', 'one', 'three'}

5、有序集合类型

r.zadd('mark', 'one', 1)
 r.zadd('mark', 'two', 2)
 r.zadd('mark', 'three', 3)
 r.zadd('mark', 'four', 4)
 r.zadd('mark', 'five', 5)
 result = r.zrange('mark', 0, 10)
 print(result)


 结果: ['one', 'two', 'three', 'four', 'five']

根据不同需要,选择不同方法

参考文章:http://www.cnblogs.com/logicalsky/p/5946647.html

猜你喜欢

转载自blog.csdn.net/u012322855/article/details/70175194