300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > python列表删除指定字典_Python:从列表中删除字典

python列表删除指定字典_Python:从列表中删除字典

时间:2023-03-28 05:56:20

相关推荐

python列表删除指定字典_Python:从列表中删除字典

thelist[:] = [d for d in thelist if d.get(id) != 2]

编辑:由于有人对这段代码的表现有所怀疑(有些是基于误解Python的性能特征,有些则假设超出了给定的规范,列表中只有一个dict,值为2, id’),我想就这一点提供保证。

在一个旧的Linux盒子上,测量这个代码:

$ python -mtimeit -s"lod=[{id:i, ame: am%s\%i} for i in range(99)]; import random" "thelist=list(lod); random.shuffle(thelist); thelist[:] = [d for d in thelist if d.get(id) != 2]"

10000 loops, best of 3: 82.3 usec per loop

其中大约57微秒的随机洗牌(需要确保删除的元素不是一直在同一个地方;-)和0.65微秒的初始副本(谁担心对Python列表的浅拷贝的性能影响是最多的显然要吃午饭;-),需要避免在循环中更改原始列表(因此循环中的每一条都有删除的东西;-)。

当知道要删除一个项目时,可以更快地找到并删除它:

$ python -mtimeit -s"lod=[{id:i, ame: am%s\%i} for i in range(99)]; import random" "thelist=list(lod); random.shuffle(thelist); where=(i for i,d in enumerate(t

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。