我有一个dbf表。我想通过使用Python自动将此表分成两个或多个表。主要问题是,该表由更多行组成。每组线由前一行除以空行。所以我需要将每个组保存到一个新的dbf表。我认为这个问题可以通过使用Arcpy包中的一些函数和FOR循环和WHILE来解决,但我的大脑无法解决它:D:/我的源dbf表更复杂,但我附上一个简单的例子以便更好地理解。抱歉我的英语很差。
源dbf表:
ID NAME TEAM
1 A 1
2 B 2
3 C 1
4
5 D 2
6 E 3
我想得到dbf1:
ID NAME TEAM
1 A 1
2 B 2
3 C 1
我想得到dbf2:
ID NAME TEAM
1 D 2
2 E 3
答案 0 :(得分:0)
使用my dbf package它可能看起来像这样(未经测试):
import dbf
source_dbf = '/path/to/big/dbf_file.dbf'
base_name = '/path/to/smaller/dbf_%03d'
sdbf = dbf.Table(source_dbf)
i = 1
ddbf = sdbf.new(base_name % i)
sdbf.open()
ddbf.open()
for record in sdbf:
if not record.name: # assuming if 'name' is empty, all are empty
ddbf.close()
i += 1
ddbf = sdbf.new(base_name % i)
continue
ddbf.append(record)
ddbf.close()
sdbf.close()