Python中文
首页
教程
问答
标签
搜索
登录
注册
加快列表中的查找项(通过Python)
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有一个非常大的列表,我必须运行很多查找这个列表。 更具体地说,我使用一个大的(大于11 Gb)文本文件进行处理,但是有些项目会出现多次,我只在它们出现时先处理它们。 如果我显示了一个模式,我就把它放上去。如果项目再次出现,我会在列表中检查它,如果是,那么我只传递给process,如下所示:</p> <pre><code>[...] if boundary.match(line): if closedreg.match(logentry): closedthreads.append(threadid) elif threadid in closedthreads: pass else: [...] </code></pre> <p>代码本身远远不是最佳的。我的主要问题是“closedthreads”列表包含几百万个项目,整个操作开始变得越来越慢。 我认为在每次append()之后对列表进行排序(或使用“sorted list”对象)可能会有帮助,但我不确定这一点。 最优雅的解决方案是什么?在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>你需要保留订单吗?在</p> <p>如果没有-使用一套。在</p> <p>如果你这样做-使用一个有序的dict。OrderedDict还允许您存储与其关联的值(例如,流程结果)</p> <p>但是。。。你需要保留原始值吗?如果你真的这么做的话,你可以看看“dbm”模块(或者买很多内存!)或者,不是存储实际的文本,而是存储SHA-1摘要或类似的东西。如果您所要做的只是确保不运行同一个元素两次,那么这可能会起作用。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
我想从用户inpu创建一个类的实例
9 回答
我想从用户导入值,为此
2 回答
我想从用户那里得到一个整数输入,然后让for循环遍历该数字,然后调用一个函数多次
3 回答
我想从用户那里收到一个列表,并在其中执行一些步骤,然后在步骤完成后将其打印回来,但它没有按照我想要的方式工作
9 回答
我想从用户那里获取输入,并将值传递给(average=dict[x]/6),然后在那里获取resu
9 回答
我想从第一个列表中展示第一个词,然后从第二个列表中展示十个词,以此类推- Python
4 回答
我想从第一个空lin开始解析文本文件
5 回答
我想从简历、简历中提取特定部分
4 回答
我想从给定字典(python)的字符串中删除\u00a9、\u201d和类似的字符。
6 回答
我想从给定的网站Lin下载许多文件扩展名相同的Wget或Python文件
7 回答
我想从网上搜集一些关于抵押贷款的数据
1 回答
我想从网站上删除电子邮件地址
2 回答
我想从网站上读取数据该网站包含可下载的文件,然后我想用python脚本把它发送给oracle如何?
4 回答
我想从网站中提取数据,然后将其显示在我的网页上
6 回答
我想从网页上提取统计数据。
6 回答
我想从网页上解析首都城市,并在用户输入国家时在终端上打印它们
6 回答
我想从色彩图中删除前n个颜色,而不丢失原始颜色数
5 回答
我想从课堂上打印字典里的键
10 回答
我想从费用表中获取学生上次支付的费用,其中学生id=id
4 回答
我想从较低的顺序对多重列表进行排序,但我无法在一行中生成结果
1 回答