4

Python でワークブックを作成しようとしていますが、さまざまなセルの値をテストして入力する必要がありますが、問題が発生しています。と を使用xlrdxlwtて、Excel ファイルを作成および編集します。

私の問題の小さな例を作成しましたが、なぜ機能しないのかわかりません。

import xlwt
import xlrd
wb = xlwt.Workbook()
ws = wb.add_sheet('Test')
ws.write(0,0,"ah")
cell = ws.cell(0,0) # AttributeError: 'Worksheet' object has no attribute 'cell'
print cell.value

私はそれを当然のことxlrdと思っていxlwtて、互いにやり取りできるクラスを共有していましたが、そうではないようです。開いている Worksheet オブジェクトのセル値を取得するにはどうすればよいですか?

4

1 に答える 1

2

私の理解では、xlwt モジュールと xlrd モジュールは別々であり、本全体をメモリに読み込むか、メモリからファイルに日付を書き込むために使用されます。これら 2 つのモジュールを使用する場合は、次のようにする必要があると思います。

1) 既存のファイル全体をメモリに読み込みます。(xlrd) 2) メモリ内のブックを編集します。 3) ブックを書き出します。(xlwt)

言い換えれば、それらは互換的に機能しません。このように機能するのは、「openpyxl」と呼ばれる別のモジュールですが、このモジュールを使用すると、上記のように実行時にオブジェクトを作成して操作できます。

リンク: http://packages.python.org/openpyxl/

于 2012-09-23T15:36:11.280 に答える