python操作redis报错:redis.exceptions.DataError: ZADD allows either 'nx' or 'xx', not bot
Posted 坚持是一种习惯
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python操作redis报错:redis.exceptions.DataError: ZADD allows either 'nx' or 'xx', not bot相关的知识,希望对你有一定的参考价值。
一、问题描述
sorted set操作执行:print(connect.zadd(‘grade‘, ‘bob‘, 98, ‘mike‘ ,100))时报错redis.exceptions.DataError: ZADD allows either ‘nx‘ or ‘xx‘, not both
二、出现该问题原因
上面的connect.zadd(‘key‘,‘value1‘,‘score1‘,‘value2‘,‘score2‘)写法是redis-py 3.0之前的版本
在redis-py 3.0版本之后,写法变为:connect.zadd(‘grade‘, {‘bob‘:100, ‘mike‘:99, ‘lucy‘:87})这种写法了,所以会报错
三、解决方案
更改写法为:connect.zadd(‘key‘,{‘value1‘:‘score1‘,‘value2‘:‘scote2‘,.....})
以上是关于python操作redis报错:redis.exceptions.DataError: ZADD allows either 'nx' or 'xx', not bot的主要内容,如果未能解决你的问题,请参考以下文章
错误记录使用 Jedis 操作 Redis 数据库报错 ( JedisConnectionException | Redis 连接超时故障排查点 | 绑定配置 | 保护模式 | 防火墙 )