Skip to main content
 首页 » 编程设计

python之从 Python 集合中请求一个元素

2024年08月26日38lvdongjie

有没有一种简单的方法可以在 Python 中向集合请求一个元素?以下是我使用过的一些方法:

elem = myset.pop(); myset.add(elem) 
elem = random.choice(list(myset)) 
elem = list(myset)[0] 

这些方法中的每一个都是低效和笨拙的。

有没有办法只询问类似 elem = myset.get() 的东西,它返回集合的一个元素而不删除它?就像一个非移除的 pop()?

(当然,该方法可能每次都返回相同的元素,直到集合被其他代码更改,但这仍然有用。)

请您参考如下方法:

elem = next(iter(myset)) 

或

for elem in myset: 
    break 

如果您发现这些代码片段让人感到困惑,您可以将它们包装在一个函数中,并取一个好听的名字:

def arbitrary_element_of(thing): 
    for elem in thing: 
        return elem 
    raise ValueError("Argument is empty")