【发布时间】:2026-02-13 07:30:01
【问题描述】:
-- 我刚刚解析了一个大文件,并创建了一个包含 42.000 个字符串/单词的列表。我想查询 [针对此列表] 以检查给定的单词/字符串是否属于它。所以我的问题是:
这种查找最有效的方法是什么?
第一种方法是对列表进行排序 (list.sort()),然后使用
>> if word in list: print 'word'
这真的是微不足道的,我相信有更好的方法来做到这一点。我的目标是应用快速查找来查找给定字符串是否在此列表中。如果您对其他数据结构有任何想法,欢迎提出。然而,我现在想避免使用更复杂的数据结构,如 Tries 等。我有兴趣听到关于快速查找或任何其他 python 库方法的想法(或技巧),这些方法可能比简单的in 更快地进行搜索。
我也想知道搜索项的索引
【问题讨论】:
-
如果您预计稍后会进行复杂的查找 - 复杂我的意思不是微不足道的 - 我建议您将其存储在
sqlite3。
标签: python search list performance