我正在使用suffixtree来检索匹配的子字符串。 readme
文件包含一个示例 -
>>> import SuffixTree.SubstringDict
>>> d = SubstringDict.SubstringDict()
>>> d['foobar'] = 1
>>> d['barfoo'] = 2
>>> d['forget'] = 3
>>> d['oo']
[1, 2]
查询返回与oo
匹配的所有字符串的值。但我也没有找到任何方法来检索价值观。例如,我想要那种结果 -
>>> d['oo']
[['foobar', 1],
['barfoo', 2]]
此类仅包含方法['__doc__', '__getitem__', '__init__', '__module__', '__setitem__', '_addToTree', '_lookupKeys', 'debug']
,我无法使用它来达到我想要的输出。
我找到了一个替代解决方案来获取我所需的结果,我从源文件中的方法_dictWordsTree()
得到了这个想法。我已将代码重写为 -
>>> import SuffixTree.SubstringDict
>>> d = SubstringDict.SubstringDict()
>>> d['foobar'] = ['foobar', 1]
>>> d['barfoo'] = ['barfoo', 2]
>>> d['forget'] = ['forget', 3]
>>> d['fo']
[['foobar', 1], ['barfoo', 2], ['forget', 3]]
我得到了所需的输出。 如何在不另外存储密钥值的情况下获取所需的输出(我有大型数据集~20MB)? (我搜索了类似的1,2,3,4,5个帖子,但它并没有帮助我。“