首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从多个.txt文件或从字典读取大量数据会更快吗?

从多个.txt文件或从字典读取大量数据会更快吗?
EN

Stack Overflow用户
提问于 2018-01-12 00:43:19
回答 3查看 212关注 0票数 1

我正在从事一个个人项目(使用Python 3),该项目将检索美国任何城市的天气信息。我的程序提示用户输入尽可能多的城市状态组合,然后检索天气信息并为输入的每个城市创建天气摘要。在幕后,我基本上是接受用户输入的状态,打开与该状态对应的.txt文件,然后获取与输入的城市相关联的天气代码,然后在URL请求中使用该代码查找城市的天气信息。因为我对每个州都有一个.txt文件,所以我有50个.txt文件,每个文件都有大量的城市天气代码组合。

将我的算法保持当前的方式会更快,还是将所有这些数据保存在字典中会更快呢?这就是我在考虑将数据存储在字典中的方式:

代码语言:javascript
复制
info = {'Virginia':{'City1':'ID1','City2':'ID2'},'North Carolina':{'City3':'ID3'}} 

如果有必要,我很乐意提供我的一些代码或详细说明。

谢谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-01-12 01:00:13

如果您有一个大的数据文件,您将花费数天的时间在文件中移动并将值放入.py文件中。如果它是一个小文件,我会使用字典,但如果它是一个大文件,一个.txt文件。

其他可能的解决办法是:

其他资源

用Python实现基本数据存储

https://docs.python.org/3/library/persistence.html

https://docs.python.org/3/library/pickle.html

https://docs.python.org/3/library/shelve.html

票数 0
EN

Stack Overflow用户

发布于 2018-01-12 00:50:10

如果您对许多用户请求使用相同的python进程,那么从文件预加载数据几乎肯定要快得多。如果进程只处理一个请求并退出,则此方法将更慢,并使用更多的内存。对于“一”和“多”之间的一些请求,它们在速度上大致相等。

对于这种情况,我可能会使用方石岩,因为python已经内置了对它的支持。它将比扫描文本文件要快得多,而无需加载整个字典所需的时间和内存开销。

票数 0
EN

Stack Overflow用户

发布于 2018-01-12 01:36:50

拥有大量的文本文件可能不是一个很好的主意,因为它在大型或众多的目录(y\ies)访问中会减慢速度。但是,如果您有大型数据记录,您可能希望在索引一个数据文件并将索引加载到字典中时,选择一个中间解决方案。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48217991

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档