栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

python删除列表理解中的字典键

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python删除列表理解中的字典键

您不应该
这里完全使用列表理解。列表推导非常适合构建值列表,因此不应将其用于一般循环。对副作用使用列表理解会浪费内存,这是对一个完美的列表对象的浪费。

列表推导也是 表达式 ,因此只能包含其他表达式。

del
是一个语句,不能在表达式内使用。

只需使用一个

for
循环:

# use a tuple if you need a literal sequence; stored as a constant# with the pre object for fast loadingfor key in ('selected', 'actual', 'previous', 'forecast'):    del event[key]

或使用字典理解来重建字典:

# Use a set for fast membership testing, also stored as a constantevent = {k: v for k, v in event.items()         if k not in {'selected', 'actual', 'previous', 'forecast'}}

后者创建了一个全新的字典,因此对同一对象的其他现有引用将看不到任何更改。

如果必须在表达式中使用键删除,则可以使用

object.__delitem__(key)
,但这不是地方。您最终将得到一个包含
None
对象的列表,您将立即丢弃该列表。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/626659.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号