gpt4 book ai didi

python - 检索 python 字典的最后一个值

转载 作者:行者123 更新时间:2023-12-02 18:14:55 25 4
gpt4 key购买 nike

d={'Bat':1,'Tennisball':3,'Racquet':2,'Shuttlecock':3,'Javelin':1,'Soccer':1,'Hockey':7,'Gloves':8}

我想要字典的最后一个值而不是键

最佳答案

O(1) 中最有效的方法是使用 dict.popitem :

k, last_value = _, d[k] = d.popitem()

自 Python 3.7 起保证后进先出顺序(保证字典插入顺序时的同一版本)。

如果双重分配看起来太棘手,请考虑

last_value = d[next(reversed(d))]

以下是时序比较(Linux 上的 CPython 3.10):

>>> d={'Bat':1,'Tennisball':3,'Racquet':2,'Shuttlecock':3,'Javelin':1,'Soccer':1,'Hockey':7,'Gloves':8}
>>> timeit k, last_value = _, d[k] = d.popitem()
107 ns ± 3.34 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
>>> timeit next(reversed(d.values()))
150 ns ± 0.237 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
>>> timeit d[next(reversed(d))]
134 ns ± 0.503 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)

关于python - 检索 python 字典的最后一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71740593/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com