当前位置: 首页 > 面试题库 >

如何使用Python API在Redis中对多个元素使用sadd?

鲜于浩淼
2023-03-14
问题内容

请考虑以下示例

>>import redis
>>redis_db_url = '127.0.0.1'
>>r = redis.StrictRedis(host = redis_db_url,port = 6379,db = 0)
>>r.sadd('a',1)
>>r.sadd('a',2)
>>r.sadd('a',3)
>>r.smembers('a')

[+]输出:set([‘1’,‘3’,‘2’])

>>r.sadd('a',set([3,4]))
>>r.smembers('a')

[+]输出:set([[‘1’,‘3’,‘2’,’set([3,4])’])

 >>r.sadd('a',[3,4])
 >>r.smember('a')

[+] set([‘1’,’[3,4]’,‘3’,‘2’,’set([3,4])’])

根据https://redis-py.readthedocs.org/zh-CN/latest/中的官方文档, sadd(name,* values)添加值以设置名称

那是一个错误还是我错过了一些东西?


问题答案:

当您*values在参数列表中看到语法时,这意味着该函数接受可变数量的参数。

因此,将其称为

r.sadd('a', 1, 2, 3)

您可以通过使用splat运算符来传递可迭代对象以对其进行解压缩:

r.sadd('a', *set([3, 4]))

要么

r.sadd('a', *[3, 4])


 类似资料:
  • 我正在使用以下xml结构: 只有当代码为“XXX”时,我才需要按ID和代码分组,并求和金额。最后,我的最终输出应该如下所示: 我知道如何通过多个元素进行分组,但我不知道如何通过元素值对分组进行条件化。我不太深入研究xsl,所以我的知识有点缺乏。我尝试过使用以下xsl(无论如何都是最新版本): 我遇到的另一个问题是,我没有完全正确的求和逻辑,但这可能是一个不同的帖子。 任何形式的帮助或指导将不胜感激

  • 本文向大家介绍在HTML中为元素使用多个CSS类,包括了在HTML中为元素使用多个CSS类的使用技巧和注意事项,需要的朋友参考一下 要添加多个CSS类,您需要使用HTML中的class属性。 示例 您可以尝试运行以下代码,以了解如何为HTML中的元素实现多个CSS类-

  • 我有一个按钮和一个文本区: null null 现在我想让它们像这样向右或向左对齐: 运行代码段按钮和文本区如何向左对齐?

  • 问题内容: 据我了解,我可以将refs用于单个元素,如下所示: 如何为一系列元素实现此功能?显然不是这样:(即使我没有尝试,我也知道:) 我已经看到了这个,因此这个。但是,对于这种简单情况,我仍然感到困惑。 问题答案: ref最初只是对象。在组件渲染之间保留对此对象的引用。value主要用于组件引用,但可以容纳任何内容。 在某个时候应该有一组引用。如果渲染之间数组长度可能有所不同,则数组应相应缩放

  • 另外,我不明白当我们只调用bind()而不调用sync()时会发生什么。服务器是否以某种方式继续运行?我们如何优雅地关闭它? 很明显,我对这一切的工作原理感到非常困惑,可悲的是,在这方面缺乏完整的文档。任何帮助都将不胜感激。

  • 问题内容: 我正在尝试使用HTML5 canvas元素绘制一些弧和圆-这在FF中效果很好,但是IE8似乎不支持它。 现在,存在一些Javascript库,这些库似乎使IE8与Canvas兼容。 我已经阅读了他们的全部资料,但我不明白他们是如何使Canvas与IE8一起工作的。有人可以介绍一下使用的方法吗? 问题答案: 该页面正在使用excanvas-一个JS库,可使用IE的VML渲染器模拟canv