python - 如何通过缺失值完成字典
问题描述
我想完成我的字典,目前看起来像这样:
dict={3023:2, 3024:3, 3025:2, 3027:1}
其中键是加 1 的连续数字,值是给定数字的出现次数。如您所见,例如(3026)缺少键,因为出现次数为0。通过缺少项来完成字典的最佳方法是什么?我想得到字典:
dict={3023:2, 3024:3, 3025:2,3026:0, 3027:1,3028:0}
解决方案
如果您知道最大和最小数字,则可以使用:
>>> d = {3023:2, 3024:3, 3025:2, 3027:1} # <-- initial dict
>>> a, b = 3023, 3028 # <-- min and max values
>>> d = {n: d.get(n, 0) for n in range(a, b + 1)} # <-- new dict
>>> print(d)
{3023: 2, 3024: 3, 3025: 2, 3026: 0, 3027: 1, 3028: 0}
推荐阅读
- angular - 什么是 valnurabilities 以及如何将它们固定在角度上
- javascript - 在 PostgreSQL 中级联复制/插入的最佳方法是什么?
- installshield - InstallShield 2019 R3 - IsCmdBld 忽略 MSI 命令行参数
- mysql - MySQL 将重复的字段条目转换为重复的递增值
- java - Maven 构建 - 依赖项 jar 已损坏
- azure - Azure 组件身份验证方法
- wpf - WPF 性能 - 附加 Visual Studio GPU 分析器时 GPU 开销/使用率直线下降?
- flutter - 具有两个或三个参数的函数作为参数
- blazor - Blazor WebAssembly 3.2.0 预览版 3 - 在 Program.cs 中使用 appsettings.{environment}.json
- java - 为什么当我输入 3 个相同的数字时我的输出总是相同的?