如何向现有集添加值?
当前回答
your_set.update(your_sequence_of_values)
例如,your_set。更新([1,2,3,4])。或者,如果你因为其他原因不得不在循环中生成值,
for value in ...:
your_set.add(value)
但是,当然,在其他可行的情况下,使用单个.update调用进行批量操作更快更方便。
其他回答
我只是想在这里补充一点。所以我在三种方法中寻找最快的方法。
使用set.add()函数 使用set.update()函数 使用"|"操作符函数。
我发现,要将单个值或多个值添加到一个集合中,必须使用set.add()函数。这是其他方法中最有效的方法。
所以我做了个测试,结果如下:
set.add() Took: 0.5208224999951199 set.update (): 0.6461397000239231” “|”操作符’Took: 0.7649438999942504
PS:如果你想知道更多的分析。
在这里检查:将值追加到set的最快方法。
your_set.update(your_sequence_of_values)
例如,your_set。更新([1,2,3,4])。或者,如果你因为其他原因不得不在循环中生成值,
for value in ...:
your_set.add(value)
但是,当然,在其他可行的情况下,使用单个.update调用进行批量操作更快更方便。
我喜欢这样做的方法是将原始集合和我想添加到列表中的值同时转换,添加它们,然后将它们转换回集合,就像这样:
setMenu = {"Eggs", "Bacon"}
print(setMenu)
> {'Bacon', 'Eggs'}
setMenu = set(list(setMenu) + list({"Spam"}))
print(setMenu)
> {'Bacon', 'Spam', 'Eggs'}
setAdditions = {"Lobster", "Sausage"}
setMenu = set(list(setMenu) + list(setAdditions))
print(setMenu)
> {'Lobster', 'Spam', 'Eggs', 'Sausage', 'Bacon'}
这样,我还可以使用相同的逻辑轻松地添加多个集,如果我尝试使用.update()方法,这将为我提供一个TypeError: unhashable类型:'set'。
定义一个集合
a = set()
使用add添加单个值
a.add(1)
a.add(2)
使用update从元组、集合、列表或冻结集合中添加元素
a.update([3, 4])
>>> print(a)
{1, 2, 3, 4}
注意:由于set元素必须是可哈希的,而列表被认为是可变的,所以不能将列表添加到set中。您也不能将其他集合添加到集合中。但是,您可以从列表和集合中添加元素,如.update方法所示。
像这样使用更新:
keep.update(newvalues)
推荐文章
- 如何在Python中进行热编码?
- 如何在JavaScript中映射/减少/过滤一个集?
- 如何嵌入HTML到IPython输出?
- 在Python生成器上使用“send”函数的目的是什么?
- 是否可以将已编译的.pyc文件反编译为.py文件?
- Django模型表单对象的自动创建日期
- 在Python中包装长行
- 如何计算两个时间串之间的时间间隔
- 我如何才能找到一个Python函数的参数的数量?
- 您可以使用生成器函数来做什么?
- 将Python诗歌与Docker集成
- 提取和保存视频帧
- 使用请求包时出现SSL InsecurePlatform错误
- 如何检索Pandas数据帧中的列数?
- except:和except的区别: