3

我想将每一行的给定列的值与另一个值进行比较,如果值相等,我想将整行复制到另一个电子表格。

如何使用 Python 做到这一点?

谢谢!

4

2 回答 2

3

请参考python excel库xlrd(用于excel阅读)/ xlwt(用于excel写作) http://www.python-excel.org/

例如(阅读)(从此):

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 处理,请使用openpyxlhttp ://packages.python.org/openpyxl/

于 2013-01-07T02:10:56.540 回答
0

对于“xls”文件,可以使用 xlutils 包。由于 Excel 格式的结构,目前无法在 openpyxl 中的工作簿之间复制对象:到处都有很多依赖项需要管理。因此,客户端代码有责任手动复制所需的所有内容。如果时间允许,我们可能会尝试将一些 xlutils 功能移植到 openpyxl。

于 2015-05-05T08:45:55.317 回答