我有一个很大的dicts字典,它有效地具有以下格式:
my_dict = {
'A' : {
'B' : {
'C' : {
'key': 'value'
}}}}
A,B,C的嵌套可能最多20个深度,最深层次的key:value对可以很容易地为3000个条目,所以我希望这样可以使用合理数量的RAM。
最初使用时,C级的所有值实际上都是一个名为“value”的字符串,稍后由for循环更新,并替换为其他地方确定的数字。
目前我只需重新分配类似
的内容updated_value = 0.23453
my_dict['A']['B']['C']['key'] = updated_value
VS。
之类的东西updated_value = 0.23453
my_dict['A']['B']['C'].update({key: updated_value})
正如我上面提到的,我希望这个结构能够使用合理数量的RAM,但它似乎使用了比我真正希望看到的更多的RAM。
所以2个问题: 除了dict之外,还有一个更好的数据结构可以用于此,因为我需要这个描述的层次结构吗?
通过重新分配=与使用update()(给定python如何通过引用传递信息)我实际上使用的RAM比我需要的多吗? (我想知道,当使用= here时,占位符'value'字符串实际上是持久存储在RAM中,即使我已经将字典中的密钥重新分配给新的数字了。)
提前感谢任何想法:)