我是python的新手,并且正在将程序作为我工作的有用工具。我有来自不同来源的杂乱,大量数据,如果我可以在收集数据集时存储数据集,这将节省大量时间。因此,我希望尽快将其整合到一起供个人使用,但是一旦我能够进行有效和安全的数据共享,我就会继续努力改进代码并将其打开以供我的同事使用。很可能,编码不会非常有效。
程序应该写入和读取(即搜索对象)6个数组的字典。理想情况下,程序还将格式化并将数据写入可以打印的固定布局文档。一个快速估计是"完成"字典产品将有300,000-400,000个项目。
考虑到字典的可变性及其大小,是将字典存储在json中的最佳方法吗?考虑到在大多数情况下,使用该程序的任何人都不会使用性能特别高的计算机,这会使客户端过载吗?
输入字符串:
citation value source origin stem equivalence
期望的输出:
- 的 ORIGIN1
的 Stem1
Source1:citation1 value1 equivalence1 ,citation3 value3 equivalence3 ;
Source2:citation2 value2 equivalence2
的茎2
等等。
答案 0 :(得分:1)
我认为dict
不是您应该使用的工具
它用于存储映射。这里的数据量不是问题,300,000-400,000项是公平的但不是很大(如果你的数据主要是文本,你的大小和大小将小于740p电影的大小)。
但是如果你的数据最终应该是结构化的,为了被查询和操纵,那么那里已经存在特定且设计精良的工具。
具体来说这两个模块都包含在anaconda安装中:
sqlite3
将数据存储在数据库中 pandas
及其数据框。它可以处理比sqlite3更少结构化的数据,可以读写数据库,并且具有很多很好的实用功能来进行数据清理。
由于您似乎仍然不确定数据的最终架构,如果我是您,我会选择pandas
,但这不仅仅是dict