Ваш код должен работать. Медленность может быть вызвана проблемой «Schlemiel the Painter» в l oop (тот факт, что вы используете load = True, делает это маловероятным, но это единственная возможность, которую я вижу). Попробуйте переписать его так:
для записи в table_ventas: table_new.append (record)
Это должно использовать стандартный итератор для объекта DBF, который должен уже возвращать OrderedDict
.
Помимо этого, вы можете попробовать перекомпилировать DBF в какой-либо другой формат, доступ к которому более эффективен, и посмотреть, улучшится ли общее время.