gpt4 book ai didi

python - 如何在没有循环的情况下将生成器元素添加到 set()?

转载 作者:行者123 更新时间:2023-12-05 08:34:32 25 4
gpt4 key购买 nike

来自 this link它说生成器没有像可迭代对象那样初始化。

如何将生成器的元素添加到集合中?有没有比 for item in generator 之类的东西和使用 setname.add(item) 更好的方法?

生成器是由 cursor.execute("SELECT ...") 命令从连接到 sqlite3 数据库的游标返回的生成器。

最佳答案

您可以使用 update 方法:

In [3]: x = set()

In [4]: g = (i**2 for i in range(5))

In [6]: x.update(g)

In [7]: x
Out[7]: {0, 1, 4, 9, 16}

update 修改 x。如果你只想返回一个新集合,你可以使用 union:

In [8]: x = set()

In [9]: g = (i**2 for i in range(5))

In [10]: x.union(g)
Out[10]: {0, 1, 4, 9, 16}

关于python - 如何在没有循环的情况下将生成器元素添加到 set()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25411993/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com