python - 该数据使用什么数据结构?

标签 python class design-patterns data-structures

我对数据结构还很陌生,我真的很想知道 SO 经验丰富的负责人的意见。我有一些分层的数据,基本上就像一棵树。我曾经将它存储在存储为数组的有序点 (x,y) 中,但现在这样做变得越来越麻烦。

假设我有两个属性,on 和 off。对于每个属性,我想存储 5 个数据值。但是这些数据值中的每一个都有一个相应的数据值需要与之一起存储。我也需要能够轻松地绘制这些。

我想到了一个元组字典,但它并不太好用,尤其是在轻松绘制值时。

有什么想法吗?


举个例子。假设我有 3 个球,质量分别为 5、10 和 15 公斤。我以一定范围的速度抛出每个球,比如 1m/s、2m/s、3m/s、4m/s 和 5m/s。我测量每个球的高度和每个速度。所以每个速度点都耦合到相应的高度。

我曾经把它存储在不同的数组中,像这样说:

ball_5kg:

v5=[1,2,3,4,5]
h5=[h1,h2,h3,h4,h5]

球_10kg

v10=[1,2,3,4,5]
h10=[h1,h2,h3,h4,h5]

但我不认为这是否真的是理想的,或者是存储此数据的最佳方式,尤其是当球质量和速度的数量变得非常大时。有没有更好的方法来存储它?

最佳答案

你想做的是这样的吗?

data = [
  { # OFF
    'val0': 'data0',
    'val1': 'data1',
    'val2': 'data2',
    'val3': 'data3',
    'val4': 'data4',
  },
  { # ON
    'val5': 'data5',
    'val6': 'data6',
    'val7': 'data7',
    'val8': 'data8',
    'val9': 'data9',
  }
]

data[0] # the `off` dict
data[1] # the `on` dict

list( data[0].keys() ) # ['val0', 'val1', 'val2', 'val3', 'val4']
list( data[1].keys() ) # ['val5', 'val6', 'val7', 'val8', 'val9']

data[0]['val0'] # 'data0'

关于python - 该数据使用什么数据结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13323846/

相关文章:

python - 在python中通过xpath从html中获取值

C++ 类和访问

c++ - 尝试在另一个类的头文件中使用对象,出现 “redefinition of class”错误

java - Android - 在应用程序和 Jar 的 HashMap 中动态添加函数

python - 无法在 python 中导入 Difflib。我该如何解决?

python - 在与 Scrapy 进行身份验证的登录 session 后使用 Selenium

python - 字符串列表中的公共(public)子字符串

html - 将两个 div 放在彼此下方时不需要的滚动条

c# - Switch 语句的替代方法

c# - 单一职责原则用法如何正确调用子方法?