Ede*_*row 1 python search text python-3.x
我有一个大文本文件(data
)具有以下布局:( a|b|c|d|e|f
虽然b
可以有管道).我用以下代码搜索文本文件:
results = 0
Data_List = []
searchphrase = input("Search: ")
with open('data', 'r', encoding="utf8") as inF:
for line in inF:
if searchphrase in line:
a, *b, c, d, e, f = line.strip().split('|')
b = '|'.join(b)
results += 1
print("\n\n", results, "\n", "A: " + a + "\n", "B: " + b + "\n", "C: " + c + "\n", "D: " + d + "\n", "E: " + e + "\n", "F: " + f + "\n\n")
Data_List.append(f)
Run Code Online (Sandbox Code Playgroud)
b
是一段文本,其中包含用户在上面的代码中实际搜索的标题(例如:) The Lion King
.但是,搜索非常具体,只返回确切的结果(换句话说,如果我搜索,The Lion King
则the lion king
不会返回).如何使搜索不那么具体和更通用(想想谷歌搜索)?
你可以看看Whoosh.
Whoosh是一个类和函数库,用于索引文本然后搜索索引.它允许您为您的内容开发自定义搜索引擎.例如,如果您正在创建博客软件,则可以使用Whoosh添加搜索功能以允许用户搜索博客条目.
它可以处理:
更多......飞快的是纯Python和Python 3兼容.
不幸的是,模糊搜索与NLP相关联,NLP是CS中最复杂的主题之一,所以它并不像使用一些神奇的正则表达技巧那么容易.
NLP很难,期间.这就是为什么谷歌使用Pigeon Cluster对结果进行排名而不是计算机算法(LoL).
归档时间: |
|
查看次数: |
1416 次 |
最近记录: |