python - 我们可以将列表作为值添加到 redis 中的排序集吗?
问题描述
我正在尝试根据分数创建一组排序的列表。就像是:
li="li"
list1 = ['a','b','c']
list2 = ['a','d','e']
redis.zadd(li,1,list1)
redis.zadd(li,2,list2)
我们能做到这一点,或者有什么方法可以做到这一点。
解决方案
要检索前 10 名列表,您可以这样做
为每个列表创建一个集合并将 setId 添加到排序集合
redis.sadd(setId, ...setElements)
redis.sadd(setId, ...setElements)
redis.sadd(setId, ...setElements)
redis.zadd(key, score, setId)
redis.zadd(key, score, setId)
redis.zadd(key, score, setId)
redis.zadd(key, score, setId)
redis.zrange(key, 0, 10) # get the top 10 setId (only the key names)
如果您也想获取数据,可以创建一个管道并调用smember
每个 keyId
推荐阅读
- django - O365 API, python sendmail:: Throttle Error: Application is over its IncomingBytes limit
- javascript - 如何将单个 CSS 样式存储在数据库中?
- flutter - Flutter 自定义 onTap 缩放效果
- android - android 10相机图像问题
- c# - 缓冲区大小音频流 xamarin 形式
- authentication - Cognito 用户无法重置他的密码,或者如果他处于“force_change_password”状态则要求重新发送
- react-native - 访问在 navigationOptions 中的功能组件内定义的功能
- php - 在 WooCommerce 订单和电子邮件通知中按名称对费用进行排序
- javascript - 一旦用户单击它,如何在制表器中使单元格为空?
- sql - Oracle SQL将sql行转换为按另一列分组的列