在zset中可以得到元素的元组列表及其得分吗?例如:
redis.zrange-function('channel', 0, -1)
[('item1', 123), ('item2', 333), etc.]
最佳答案
对于redis-py
,根据docs for zrange()
,在zrange()
中有一个可选参数:zrange(name, start, end, desc=False, withscores=False, score_cast_func=<type 'float'>)
从按升序排序的开始和结束之间的排序集名称返回一个值范围。
…withscores
表示返回分数和值。返回类型是(值,分数)对的列表
例子:
In [292]: import redis
In [293]: r = redis.Redis()
In [294]: r.zadd('channel', 'a', 0, 'b', 5, 'c', 8, 'd', 20)
Out[294]: 4
In [295]: r.zrange('channel', 0, -1, withscores=True)
Out[295]: [(b'a', 0.0), (b'b', 5.0), (b'c', 8.0), (b'd', 20.0)]
关于python - 得分zrange得分,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52582614/