2014-01-25 32 views
0

我有一個dbf表。我想通過使用Python自動將此表分成兩個或多個表。主要的問題是,這張表由更多的行組成。每組線由前一組以空行劃分。所以我需要將每個組保存到一個新的dbf表中。我認爲這個問題可以通過使用Arcpy軟件包和FOR循環和WHILE中的函數來解決,但是我的大腦不能解決這個問題:D:/我的源dbf表更復雜,但我附上了一個簡單的例子,以便更好地理解。對不起,我英文很差。如何使用python將dbf表劃分爲兩個或多個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

這是一個實際的'.dbf'文件還是'csv'文件?你目前有什麼代碼? –

回答

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() 
相關問題