我有一组对象的名称/标识(就生活中的对象而言,而不是 python 对象)。
为简单起见,这些对象具有以下名称:
A, B, C, D, E ...
此类物体的数量约为 2000 个(未来可能约为 6000 个)。
我正在尝试确定完成任务的最佳方式:在每对对象之间存储信息 (param1, param2, ..., paramN) 的最佳方式是什么。看起来像下面的数据结构:
A B C D
A - [param1, param2] [param1, param2] [param1, param2]
B [param1, param2] - [param1, param2] [param1, param2]
C [param1, param2] [param1, param2] - [param1, param2]
D [param1, param2] [param1, param2] [param1, param2] -
重要的是要考虑几个方面:
- cell[A,B]=cell[B,A] 所以我们只需要存储所有表格的 1/2
- 我需要将此表保存在 tmp 目录中并在我的 python 应用程序的启动中加载
- 我需要在我的 python 应用程序中快速从这个表中提取值
我的解决方案:我使用了 pandas.DataFrame 模块。对于每个参数:param1,param2,...我制作单独的三角表:param1table,param2table,...填充后我将它们保存在 CSV 文件中:param1table.csv,param2table.csv,...csv
在我的程序中,如果我需要成对的param1:A,B,我需要加载param1table.csv(pandas.read_csv)并查看值[A,B]是否存在返回它,否则返回[B,A]
我认为它不是有效的方法。