python - 如何从 python 中的字典中删除 key: 对某个数字的对?
问题描述
给定一个数字和一个字典,“remove_numbers_larger_than”会删除其值为大于给定数字的数字的任何键。返回修改后的字典。
def remove_numbers_larger_than(dictionary, number):
for k, v in dictionary.items():
if v > number:
del d[k]
return dictionary
解决方案
如果您需要修改给定dict
的位置,请先复制键,以便从 dict 中删除键不会干扰迭代。
def remove_numbers_larger_than(dictionary, number):
keys = list(dictionary)
for k in keys:
if dictionary[k] > number:
del dictionary[k]
return dictionary
如果您可以自由地创建一个新的dict
,
def remove_numbers_larger_than(dictionary, number):
return dict(kv for kv in dictionary.items() if kv[1] <= number)
推荐阅读
- apache-spark - 如何在 Spark SQL Query 中加速 WholeStageCodegen?
- java - 地图在 OpenStreetMap (osm) 中不可见
- java - 如何在没有工件或 setting.xml 的情况下使用 Maven 项目?
- java - 如何列出特定jar文件中的所有包?
- maven - 从依赖项加载资源
- python - Power BI:如何使用 Python 处理/清理字符串数据?
- flutter - 删除 Flutter 中的导航覆盖
- python-3.x - 随机森林可视化
- c# - 在 Clean Architecture 中为 Autofac 实现 Serilog 上下文记录器注入的正确方法是什么?
- sql - 试图让价值仅在其小于 100 时显示