31

我有一个包含不同数量列的 Excel 文件,我想使用 Python 遍历该文件的某些列(从它们的标题行值),然后将这些列写入(复制)到另一个 Excel 文件。

请问有什么关于我如何做到这一点的例子吗?

4

1 回答 1

60

以下是一些可供选择的选项:

  • xlwt(写入 xls 文件)
  • xlrd(读取 xls/xlsx 文件)
  • openpyxl(读/写 xlsx 文件)
  • xlsxwriter(写入 xlsx 文件)

如果您只需要复制数据(没有格式信息),您可以使用这些工具的任意组合进行读/写。如果您有xls文件,则应使用 xlrd+xlwt 选项。

这是将第一行从现有 excel 文件复制到新文件的简单示例:

import xlwt
import xlrd

workbook = xlrd.open_workbook('input.xls')
sheet = workbook.sheet_by_index(0)

data = [sheet.cell_value(0, col) for col in range(sheet.ncols)]

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

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

workbook.save('output.xls')
于 2013-05-15T09:26:56.937 回答