【问题标题】:Writing an array from one Excel file to another in Python在 Python 中将数组从一个 Excel 文件写入另一个文件
【发布时间】:2016-05-07 02:15:19
【问题描述】:

我有一个将 ESRI 要素类属性表转换为 excel 文件的脚本。问题是它在过程中添加了一个对象 ID 字段。这会使用引用集合数组的 .dtt 应用程序将文件上传到数据库。因此,我需要脚本来读取输出 excel 文件并将所有内容添加到没有第一列的新 excel 文件中。导致 xlrd 和 xlwt 函数的所有内容都运行良好,因此我将排除表格到 excel 转换之前的所有内容:

arcpy.TableToExcel_conversion(outTemplate, outXL)
print "arcpy.AddMessage(Creating GoLive_+glName)"

workbook = xlrd.open_workbook(outXL)
writeBook = r"S:Upload\SVRSTA00.xls"

sheet = workbook.sheet_by_index(0)

cell_range_value = 0
for value in sheet.col(32):
    cell_range_value += 1
print cell_range_value

dct1 = {}
for i in range(1, cell_range_value,1):
    data = [sheet.cell_value(i, col) for col in range(sheet.ncols)[1:]]
    cell_value_class = sheet.cell(i,32).value
    cell_value_id = data
    dct1[cell_value_class] = cell_value_id

print 

workbook = xlwt.Workbook()
sheet = workbook.add_sheet('SVRSTA00')

for index, value in enumerate(dct1):
    sheet.write(0, index, value)

workbook.save(writeBook)

这是我得到的错误:

ValueError: column index (u'181011020') not an int in range(256)

【问题讨论】:

    标签: python excel xlrd xlwt


    【解决方案1】:

    Excel 支持到 256 列,注意列的值(从 0 到 255)。

    你可以使用openpyxl,它更灵活,更有用

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-23
      相关资源
      最近更新 更多