Для redis-py
есть необязательный аргумент для этого в 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)]