如何在Python中将dbf表列表合并为一个?

时间:2013-10-22 02:13:55

标签: python dbf

我想将“Output”文件夹中的许多dbf表合并到一个表中。这是我的代码,但它不起作用(错误显示如下)。:

import arcpy     
import os

arcpy.env.workspace="C:\\Users\\Desktop\\Betty\\Output"
listTable = arcpy.ListTables ()
arcpy.Merge_management (listTable, 'C:\\Users\\Desktop\\Betty\\Output\\ppt.dbf')
print "done!"

追踪(最近一次通话):   文件“C:\ Users \ caobaijing \ Desktop \ Betty \ Python \ MergeTables.py”,第7行,in     arcpy.Merge_management(listTable,“C:\ Users \ caobaijing \ Desktop \ Betty \ Output \ ppt.dbf”)   合并中的文件“C:\ Program Files(x86)\ ArcGIS \ Desktop10.1 \ arcpy \ arcpy \ management.py”,第3762行     提高e ExecuteError:无法执行。参数无效。 错误000732:输入数据集:数据集 * *不存在或不受支持 无法执行(合并)。

2 个答案:

答案 0 :(得分:1)

对于其他发现此问题的人来说,代码运行得很好。必须是工作空间目录中的路径错误或没有dbfs。

import arcpy

arcpy.env.workspace = 'C:/junk/tables'
listTable = arcpy.ListTables()
arcpy.Merge_management(listTable, 'C:/junk/tables/ppt.dbf')
print "done!"

答案 1 :(得分:0)

上面的答案对我来说不起作用,listTable一直以空白结果回来。使用带有* .dbf通配符的ListFiles就可以了。

我使用filezilla从ftp://ftp2.census.gov/geo/tiger/TIGER2014/PLACEEC/

下载一堆压缩的shapefile

我将它们解压缩到一个目录(C:/ Temp)中,以便所有shapefile都在一个文件夹中。 我有7个拉链,所以我只选择了所有的zip文件,右击 - > 7-zip - >在这里提取。

import arcpy
arcpy.env.workspace = "C:/Temp"
files = arcpy.ListFiles ( "*.dbf")
arcpy.Merge_management ( files, "C:/Temp/output.dbf" )

我在excel中打开了output.dbf,我将所有数据放在一起。