是否可以操作dbf头和字段IE更改顺序?

时间:2013-12-24 17:40:23

标签: python dbf

我正在尝试创建一个将标题及其字段重新排序的函数:

import dbf

table = dbf.Table('somefile.dbf', default_data_types = {'C': dbf.Char})

headerlist = [head0, head1, head2, head3]

def _reorder(x,y):
    z = table._meta.user_fields

    with table:
        z.insert(z.index(x), z.pop(z.index(y)))

while headerlist != table.field_names:
    _reorder(2, 0)
    _reorder(1, 3) #along with any others needed

但似乎_meta.user_fields似乎不是操纵该数据的正确方法。我想知道以新的.dbf文件所需的特定顺序编写数据是否更容易..

我很可能在这里使用代码,开始学习python ......有人能指出我正确的方向吗?

1 个答案:

答案 0 :(得分:1)

重新排序字段的最简单方法就是创建一个新数据库。我没有在我的dbf模块中做出允许重新排序字段的规定。

如果您尝试以特定顺序呈现或处理字段,则可以执行以下操作:

field_order = ['head3', 'head0', 'head2', 'head1']
for field in field_order:
    print_or_process(my_table[field])