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 に答える