Python:字典 - 删除键具有默认值

时间:2013-10-21 11:29:02

标签: python dictionary

我正在研究数据集,同样,正在处理的大量数据存储在字典中。随着数据的处理,许多密钥都会更新。

为了避免检查每个级别是否存在键,我选择以静态方式创建结构,我用默认值加载键的值。

示例:

Student : {
"Name" : "",
"Exam" : {
"Math" : {"Marks_Obtained" : 0, "Total_Question" : 100, .... some more keys  }
}
}

现在当我遇到另一个考试统计说“英语”以避免检查键是否存在时,我预先配置了默认值的结构。所以现在我的结构会看起来像这样。

Student : {
"Name" : "",
"Exam" : {
"Math" : {"Marks_Obtained" : 0, "Total_Question" : 100, .... some more keys  },
"Eng" : {"Marks_Obtained" : 0, "Total_Question" : 100, .... some more keys  },
"Hist" : {"Marks_Obtained" : 0, "Total_Question" : 100, .... some more keys  },
"Bio" : {"Marks_Obtained" : 0, "Total_Question" : 100, .... some more keys  }
}
} 

现在有些学生可能不会选择参加考试。我想删除整个结构。假设学生没有选择我想要删除的历史记录(del [“Exam”] [“Hist”])。

我不想动态生成结构,因为对于用户提供的检查,值会经常更新,并且检查每次迭代的结构的有效性将意味着额外的O(1)过程。

我希望做的是有效删除未使用的密钥。 我不想使用for循环循环,因为这将是一种低效的方式。

如果有任何疑问,请随时发表评论。

让我知道你的想法!

0 个答案:

没有答案
相关问题