首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >一日一技:【重要】redis-py最新版本zadd方法参数有变

一日一技:【重要】redis-py最新版本zadd方法参数有变

作者头像
青南
发布2019-01-09 17:35:03
发布2019-01-09 17:35:03
2.7K0
举报
文章被收录于专栏:未闻Code未闻Code

在Python中操作Redis数据库,我们一般使用的第三方库为redis-py。

在redis-py 3.0之前,如果我需要添加一个有序集合的值,我是这样写的代码:

代码语言:javascript
复制
import redis
client = redis.Redis()

client.zadd('key', value1, score1, value2, score2)

在redis-py 3.0及以后的版本,上面这种写法会导致如下的报错:

代码语言:javascript
复制
>>> client.zadd('test_zadd', 'name', 1)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/xieqiankun/.local/share/virtualenvs/test_redis-tFyJIHTO/lib/python3.6/site-packages/redis/client.py", line 2263, in zadd
    for pair in iteritems(mapping):
  File "/Users/xieqiankun/.local/share/virtualenvs/test_redis-tFyJIHTO/lib/python3.6/site-packages/redis/_compat.py", line 123, in iteritems
    return iter(x.items())
AttributeError: 'str' object has no attribute 'items'

在新版本中,正确的写法为:

代码语言:javascript
复制
import redis
client = redis.Redis()

client.zadd('key', {value1: score1, value2: score2})
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-12-19,如有侵权请联系 cloudcommunity@tencent.com 删除
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档