搜索树返回索引超出范围

2024-06-17 09:31:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用python包ahocorasick(https://hkn.eecs.berkeley.edu/~dyoo/python/ahocorasick/)来匹配这里的状态名:

import ahocorasick
states = {
    'AK': 'Alaska',
    'AL': 'Alabama',
    'AR': 'Arkansas',
    'AS': 'American Samoa',
    'AZ': 'Arizona',
    'CA': 'California',
    'CO': 'Colorado',
    'CT': 'Connecticut'
}

def LoadKeywords(keywords):
    #Keyword should be a list
    tree = ahocorasick.KeywordTree()
    for k in keywords:
        tree.add(k)
    tree.make()
    return tree

keywordLong = states.values();
keywordLongTree = LoadKeywords(keywordLong);

然后我试着去搜索

^{pr2}$

它回来了

(0, 7)

这很好而且合法,但是当我这么做的时候

keywordLongTree.search("I don't know why this happen")

它应该返回一个NONE对象,但它返回:

(145331, 145335)

以前有人遇到过这种情况吗?为什么会这样?在


Tags: httpsimporttree状态edustateskeywordsberkeley