dict作为决策树的性能问题

时间:2014-08-31 09:45:09

标签: python performance dictionary

我在这里遇到了性能问题我想我不知道该怎么称呼它,但它有一个像外观一样的决策树。

该程序应该在短时间内处理相当多的数据。根据数据,程序应确定要设置的操作。大部分时间都有效。但有时并非所有数据都没有被处理(使用相同的数据进行测试)我将OSC消息作为来自外部程序的字符串,间隔约为1ms(可能更少)。 PythonOSC稍微处理它们然后将它发送到这个函数:

nextAction = {
   "nextAction1": doSomethingElseA,
   "nextAction2": dosomethingElseB,
   "nextAction3": nextActionA
}

action = {
   "action1": doSomethingA,
   "action2": dosomethingB,
   "action3": nextAction
}

def check(address, value):

   keywords = address.split('/')

   try:
       if len(keywords) == 2:
           action[keywords[1]](value)

       if len(keywords) == 4:
           action[keywords[1]][keywords[3]](int(keywords[2]), value)

   except KeyError:
       pass

也会有超过4个字的情况(可能还有1-2个字)。地址看起来像"x/address/2/here",值是float

是否有更好的方法来处理此数据以找出要设置的操作?表现明智。

0 个答案:

没有答案