我需要一个合适的Python数据结构

我需要一个合适的Python数据结构,python,data-structures,python-2.7,Python,Data Structures,Python 2.7,以下是我试图解决的问题: 我有盒子A,B,C和D,还有球A,B,C,D,e,f每一个都在前面提到的一个盒子里。所以我知道,例如,球a,b,c和d在框a中。球e、j、p和w都在B框中,等等 我试图根据每个球所在的盒子来给它上色,所以我需要一个数据结构来有效地保存和处理这些信息 我的第一个想法是保留一个像{'a':'a','b':'a',…'w':'b'…}这样的dict,如果a的值是a将他(例如)涂成红色,但我不确定这是否是在这种情况下保存信息的最佳方式。另一种方法是保存一本字典,其中的方框作为键

以下是我试图解决的问题:

我有盒子
A
B
C
D
,还有球
A
B
C
D
e
f
每一个都在前面提到的一个盒子里。所以我知道,例如,球
a
b
c
d
在框
a
中。球
e
j
p
w
都在
B
框中,等等

我试图根据每个球所在的盒子来给它上色,所以我需要一个数据结构来有效地保存和处理这些信息


我的第一个想法是保留一个像
{'a':'a','b':'a',…'w':'b'…}
这样的dict,如果
a
的值是
a
将他(例如)涂成红色,但我不确定这是否是在这种情况下保存信息的最佳方式。

另一种方法是保存一本字典,其中的方框作为键,球作为值:

boxes = { 'A' : set('a', 'b', 'c', 'd'), 'B' : set('e', 'j', 'p'), ... }
然后,您可以在关键帧上迭代,并使用相同的颜色为相应集中的所有球着色

for box in boxes:
    for ball in boxes[box]:
        color(ball, box)

什么是有效的将取决于你正在做什么以及你多久做一次。你的问题中没有太多信息可供猜测

例如,不清楚同一盒子中的所有球是否具有相同的颜色。如果是这样的话,那么你可以将颜色分配给盒子,而不是球,以节省空间;但是你想让什么更有效率呢


如果您展示了一些代码,就可以省去大量的任务

问题是:我从外部获得了需求,比如找到球j并给它上色,然后找到球b并给它上色,等等。我不能遍历框并给球上色。球和框只是一个例子。实际情况是,我有不同窗口的Gui工具,我有一个配置文件,其中设置了参数。我正在解析配置文件,并试图从GUI设置相同的参数(它们在我的GUI的不同窗口中)。现在的问题是,我无法动态检测我要设置的参数所在的窗口,因此我希望保留“param:window”信息,并在读取配置文件时使用该信息,并在windows中设置相应的参数