- 问题:
-
假设如下:
>>> s = set([1, 2, 3])
如何在不执行
s.pop()
的情况下从s
中获取值(任何值)?我想将该项保留在集合中,直到我确定我可以删除它-这是我只能在异步调用另一个主机之后才能确定的又快又脏:
>>> elem = s.pop()
>>> s.add(elem)但是你知道更好的方法吗?最好是在恒定时间内
- 答案:
-
两个不需要复制整个集合的选项:
for e in s:
break
# e is now an element from s或者
e = next(iter(s))
但一般来说,集合不支持索引或切片