我想收集数据并按照下面的说明进行表示,但不确定要使用哪种数据类型,如果是c,多维数组将完成这项工作。
Box 1 Box 2 Box 3
Red 5 8 3
Yellow 3 7 2
Blue 5 4 9
未预定义框数和颜色数。我通过阅读文件box1,box2 .....来创建它。
答案 0 :(得分:2)
您可以使用dictionary
{color
:list of box count
}。
e.g。
>>> colors = {}
>>> colors["red"] = [1,2,3] #you can dynamically add to list while reading files.
>>> colors["yellow"] = [0,2,4]
>>> colors
{'yellow': [0, 2, 4], 'red': [1, 2, 3]}
然后您可以根据需要迭代字典并打印数据。
答案 1 :(得分:2)
from collections import OrderedDict
class Colors(OrderedDict):
"""Store colors in depend from added order"""
def __setitem__(self, color, value):
if color in self:
del self[color]
OrderedDict.__setitem__(self, color, value)
colors_table = Colors()
colors_table["red"] = [1,2,3]
colors_table["yellow"] = [0,2,4]
colors_table["blue"] = [2,3,4]
print colors_table # print Colors([('red', [1, 2, 3]), ('yellow', [0, 2, 4]), ('blue', [2, 3, 4])])
答案 2 :(得分:0)
你也可以在python中使用多维数组,但方式略有不同。这里将是一个数组数组。因此,您的数据结构将类似于:
matrix = [
['Color', 'Box1', 'Box2', 'Box3'],
['Red', 5, 8, 3],
['Yellow', 3, 7, 2],
['Blue', 5, 4, 9]
]