如何在没有O ^ 2运行时的Python中对条目进行分类?

时间:2015-08-21 09:05:38

标签: python algorithm python-3.x

我想写一个Python 3脚本来管理我的开支,我将要有一个规则过滤器,上面写着“如果描述包含特定字符串,则将其归类为x”,并且这些规则将被读入来自文本文件。

我能想到这样做的唯一方法是对每个事务的描述应用str.find(),如果找到一个,则中断 - 但这是一个O ^ 2解决方案,有没有更好的这样做的方式?

1 个答案:

答案 0 :(得分:1)

从描述中删除标点符号,并将split标记为单词。将说明中的字词设为set,将类别设为另一个set

sets use dictionaries internallydictionaries are built on hash-tables起,平均成员资格检查为O(1)。

输入(或更改)交易时

,与两个集合相交以查找适用的类别(如果有),并将类别添加到您的交易记录(dictnamedtuple,等等。