Наиболее эффективный способ извлечь таблицу PyTables с сохраненными именами столбцов в качестве имен переменных - PullRequest
3 голосов
/ 21 сентября 2010

Следующий код обеспечивает мою необходимую функциональность;но занимает чуть больше 10 секунд для таблицы, содержащей 200 переменных с 64000 строк.Существует ли более эффективный способ создания пространства имен переменных, совпадающих с именами столбцов?

strExec = "a = table[:]"  
for colobj in table.description._f_walk(type="Col"):  
    colName = colobj._v_pathname  
    strExec = strExec + '\n' + colName + " = a['" + colName + "']"  
exec(strExec)  

Код будет выполняться в среде анализа и представляет большую часть времени ожидания для конечного пользователя;Итак, я хотел бы получить подтверждение того, что это лучший способ добиться создания пространства имен, динамически основанного на именах столбцов PyTable.

1 Ответ

1 голос
/ 29 ноября 2010

Как рекомендует unutbu, копия таблицы a = table [:] является потребителем времени. Предлагаемый код в противном случае предоставляет доступ к переменным tablename без префикса. Признано, что использование этого метода упрощения пространства имен переменных сомнительно, поскольку оно не может быть самоочевидным кодом.

...