Python中文
首页
教程
问答
标签
搜索
登录
注册
Python文件内存优化集
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我对Python很陌生。在python脚本中,我需要检查输入字符串是否存在于“titles”集合中;我从文件“titles”中以换行分隔的字符串加载该集合。它消耗大量内存。我选择存储在set中,因为后面还有<code>if inputstring in titles:</code>。你知道吗</p> <pre><code>Line # Mem usage Increment Line Contents ================================================ 1 6.160 MiB 0.000 MiB @profile 2 def loadtitles(): 3 515.387 MiB 509.227 MiB titles = open('titles').read().split() 4 602.555 MiB 87.168 MiB titles = set(titles) </code></pre> <p><strong>第一季度。有没有其他对象类型的内存效率更高来存储这些大数据?</strong></p> <p>我能想到的一个解决方案是,如果我将文件作为字符串加载,它消耗的内存与filesize完全相同;这是100%的最佳内存消耗。你知道吗</p> <pre><code>Line # Mem usage Increment Line Contents ================================================ 1 6.160 MiB 0.000 MiB @profile 2 def loadtitles(): 3 217.363 MiB 211.203 MiB titles = open('titles').read() </code></pre> <p>然后我可以做<code>if inputstring+'\n' in titles:</code></p> <p><strong>第2季度。有没有更快的替代方法?</strong></p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>您可以:</p> <ul> <li>如果要查找大量键,请使用键/值存储。你知道吗</li> <li>如果要查找的键很少,则逐行遍历文件并检查是否存在键。你知道吗</li> </ul>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
将Pandas数据帧转换为PyTorch张量?
4 回答
将Pandas数据帧转换为scipy稀疏矩阵
3 回答
将Pandas数据帧转换为Spark Datafram时出现问题
9 回答
将pandas数据帧转换为spark DataFram时出错
9 回答
将Pandas数据帧转换为spark datafram时收到错误
9 回答
将Pandas数据帧转换为Spark数据帧
4 回答
将Pandas数据帧转换为Tensorflow数据
3 回答
将Pandas数据帧转换为tkinter obj
8 回答
将pandas数据帧转换为XML
1 回答
将Pandas数据帧转换为值sql语句
3 回答
将pandas数据帧转换为元组
7 回答
将pandas数据帧转换为元组列表
9 回答
将pandas数据帧转换为元组列表并删除所有pandas数据类型
1 回答
将pandas数据帧转换为具有头和数据类型的numpy数组
9 回答
将pandas数据帧转换为内存中的拼花地板,并将其加载到Python中的Hadoop中
10 回答
将pandas数据帧转换为内存中类似文件的对象?
3 回答
将Pandas数据帧转换为内存功能(&F)
10 回答
将pandas数据帧转换为列表列表
3 回答
将pandas数据帧转换为列表列表以输入到RNN
1 回答
将Pandas数据帧转换为单行DataFram
7 回答