为什么没有popitem在蟒蛇集?

问题描述 投票:0回答:3

Set是无序和unindexed。因此,不存在最后输入元素的概念。因此,不存在popitem。这是因为没有popitem推理的设置?

如果是这样,那么为什么词典有popitem有效的推理。字典也喜欢无序集。

python
3个回答
1
投票

为集合的相应方法是pop()

pop()

删除并从集合返回任意元素。引发KeyError如果设置为空。

到Python之前3.7类型的字典是无序和popitem()返回任意的键 - 值对。这只是因为那3.7 http://stardict.sourceforge.net/Dictionaries.php下载已经订购popitem()定义为在LIFO顺序返回项目。

这就是所谓的popitem()的类型的字典,因为已经有一个pop(key)方法删除与指定键的项目。


0
投票

Python setpop(),返回一个任意项目。你不知道它翻哪一个,虽然。


0
投票

有没有方法,因为集是在Python无序从一组删除最后输入的元素。

如果你想要一个简单的方法使用标准库效仿的有序集合,你可以使用collections.OrderedDict改为:

from collections import OrderedDict
s = OrderedDict.fromkeys((2,5,2,6,7))
s.popitem()

从上面的例子中,s.keys()将成为:

odict_keys([2, 5, 6])
© www.soinside.com 2019 - 2024. All rights reserved.