嵌套字典的设计可以吗?

5 投票
6 回答
5462 浏览
提问于 2025-04-15 19:29

我的数据结构设计成了一个嵌套字典,像这样:

my_dict = {"a": {"b": {"c":"I am c"}}}   
my_dict["a"]["b"]["c"]

这样做常见吗?还是说我们有其他更好的选择(比如使用对象)?

6 个回答

1

一开始你可能觉得这些东西挺不错的,但通常你会发现自己需要更多的信息或功能。如果真到了那一步,你可能会第一时间想“我需要更多的哈希”,但其实这些问题都可以通过使用更简单的结构来避免……这样做也会更容易。

8

你可以用一个元组来把你的值存储在一个简单的字典里:

d = {}
d[a, b, c] = e

这要看你具体在做什么,但记住,Python的哲学说,简单的结构比复杂的结构要好哦 :)

9

嵌套字典本身并没有什么问题。字典的值可以是任何东西,有时候用字典作为值是有道理的。

很多时候,当人们使用嵌套字典时,其实可以通过用元组作为键的字典来更简单地解决问题。这样一来,访问某个值就不需要像这样 d[a][b][c],而是可以直接用 d[a, b, c] 来访问。这通常更容易设置和使用。

撰写回答