搜索

首页  >  问答  >  正文

redis|redis-py zadd 和 zincrby的设计简直让我理解不能啊

redis
zadd命令为 zadd 变量 val key
zincrby命令为 zincrby 变量 val key

hset的命令为 hset 变量 key val 像hash这种赋值为key val的赋值方式我是很理解的

z系列的东西是val key就算了,然而redis.py里面的设计为什么这么诡异

conn.zadd 变量 val key 跟 redis的zadd顺序一致
conn.zincrby 变量 key val跟 redis的zincrby顺序相反

理解不能啊,首先zadd里面当年为毛设计成val key而不是key val,其次写redis-py的作者是怎么想的,为毛zadd与zincrby一个跟默认命令顺序相同,一个跟默认命令相反?

伊谢尔伦伊谢尔伦2776 天前649

全部回复(1)我来回复

  • 淡淡烟草味

    淡淡烟草味2017-04-25 09:06:21

    因为这几个参数的叫法不是你写的这样:

    zadd命令为 zadd 变量 val key

    而是

    zadd key score member

    key是有序集合的key,你所谓的val是集合里面每个成员的分数,而最后是成员。这东西和普通的set key value根本是两回事。

    但为啥是score member而不是member score我就不太清楚了,个人瞎猜可能设计者认为这个跟排行榜是类似的,排行榜一般都是排名在前,谁是这个排名在后

    回复
    0
  • 取消回复