小编典典

如何从python中的单成员集中提取成员?

python

我最近遇到了一个场景,如果一个集合只包含一个元素,我想对该元素做些事情。为了获得元素,我决定采用以下方法:

element = list(myset)[0]

但这不是很令人满意,因为它创建了不必要的列表。也可以通过迭代来完成,但是迭代似乎也不自然,因为只有一个元素。我是否缺少简单的东西?


阅读 263

收藏
2021-01-20

共1个答案

小编典典

元组拆包工作。

(element,) = myset

(顺便说一句,python-
dev进行了探索,但拒绝添加myset.get()来从集合中返回任意元素。这里的讨论是Guido van
Rossum回答12。

对于获得任意元素,我个人最喜欢的是(当您有一个未知数时,但是如果您只有一个也可以):

element = next(iter(myset)) ¹

1 :在Python 2.5及更低版本中,您必须使用iter(myset).next()

2021-01-20