【发布时间】:2015-01-25 04:11:25
【问题描述】:
我正在尝试从 OrderedDict 中删除键和值,但是当我使用时:
dictionary.popitem(key)
即使提供了不同的键,它也会删除最后一个键和值。如果字典可以去掉中间的键吗?
【问题讨论】:
-
Read the docs for
OrderedDict.popitem: "如果last为真,则按 LIFO 顺序返回对,如果为假,则按 FIFO 顺序返回。" -
dictioary.popitem()不带参数,使用dictionary.pop(key)。 -
@martineau 你也应该点击那个链接 -
.popitem确实接受一个论点,last,否则 OP 会得到一个TypeError而不是意外行为 -
@jonrsharpe: True,
OrderedDict.popitem()确实 采用可选参数,但它不是字典中的键——因此 OP 应该使用继承的dict.pop(key)方法,特别是如果他们希望将被删除的键的关联值作为结果返回。
标签: python dictionary ordereddictionary