3

各行の特定の列の値を別の値と比較したいのですが、値が等しい場合は、行全体を別のスプレッドシートにコピーしたいと思います。

Pythonを使用してこれを行うにはどうすればよいですか?

ありがとう!

4

2 に答える 2

3

plsはpythonExcelライブラリxlrd(Excelの読み取り用)/ xlwt(Excelの書き込み用) http://www.python-excel.org/を参照します

たとえば(reading)(from this):

import xlrd

fname = "sample.xls"
bk = xlrd.open_workbook(fname)
shxrange = range(bk.nsheets)
try:
    sh = bk.sheet_by_name("Sheet1")
except:
    print "no sheet in %s named Sheet1" % fname
    return None
nrows = sh.nrows
ncols = sh.ncols
print "nrows %d, ncols %d" % (nrows,ncols)

cell_value = sh.cell_value(1,1)
print cell_value

row_list = []
for i in range(1,nrows):
    row_data = sh.row_values(i)
    row_list.append(row_data)

Excel 2007で処理している場合は、 http openpyxl//packages.python.org/openpyxl/を使用します。

于 2013-01-07T02:10:56.540 に答える
0

「xls」ファイルの場合、xlutilsパッケージを使用できます。現在、Excel形式の構造のため、openpyxlのブック間でオブジェクトをコピーすることはできません。管理する必要のある依存関係がいたるところにたくさんあります。したがって、必要なものをすべて手動でコピーするのはクライアントコードの責任です。時間が許せば、xlutils機能の一部をopenpyxlに移植しようとするかもしれません。

于 2015-05-05T08:45:55.317 に答える