redis不同数据返回类型读取
2017-04-14 19:06
330 查看
错误描述
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'] 63、hash类型
r.hset('user:info', 'name', 'Jack')
r.hset('user:info', 'age', 20)
r.hset('user:info', 'phone', '18712909999')
r.hset('user:info', 'email', '123@gmail.com')
rst = r.hgetall('user:info')
print(rst)
结果: {'age': '20', 'email': '123@gmail.com', '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
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'] 63、hash类型
r.hset('user:info', 'name', 'Jack')
r.hset('user:info', 'age', 20)
r.hset('user:info', 'phone', '18712909999')
r.hset('user:info', 'email', '123@gmail.com')
rst = r.hgetall('user:info')
print(rst)
结果: {'age': '20', 'email': '123@gmail.com', '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
相关文章推荐
- JAVA中数据的读取与写入,不同类型数据的转换
- 有时我们需要调用一个函数时,返回多个不同类型的数据
- Redis不同数据类型的的数据结构实现
- bottle框架学习(四)为web客户端返回不同类型的数据
- 后台返回一个string类型的json格式数据,前台js如何读取?
- Redis不同数据类型的的数据结构实现
- Redis-02-Redis数据类型与对不同类型数据的操作
- Redis不同数据类型命令使用及应用场景
- [读取文件数据],open()的返回类型和【list.append(),造成显性写入\n】。方法参数的缺省带来的影响?
- Tensorflow中对于不同类型数据的读取
- 阿里RAP+fiddler实现app原生应用的cgi数据mock----- (二)添加mock规则,随机返回4中类型(不同长度)的数据
- Java为什么两个值相等的对象==比较返回false而两个值相等的不同类型的的基本数据类型返回true
- 文件磁盘相关函数[23]-文本文件读写-不同数据类型的读取
- linq自数据库中读取数据,返回匿名类型对象,以供前端使用
- 2、redis原生的命令操作不同数据类型
- AJAX ,在jsp处理 action返回的不同数据类型
- 批量读取不同类型数据并存入不同数据库表
- Redis不同数据类型的的数据结构实现
- Redis常见的5种不同的数据类型详解
- Redis不同数据类型的的数据结构实现