Python比较两个xls文件以匹配元素

时间:2015-03-11 06:53:00

标签: python excel

我是python中的新手。我的想法是编写脚本,它从文件“file1.xls”col 1获取元素,在col 2上获取项目数,将col 1与文件“file2中col 1中的元素进行比较。 xls“,如果”file3.xls“中有匹配则写道: 匹配col 1的字符串(在file2.xls中) 项目名称在同一行但是col 2(在file2.xls中) 项目权重在同一行但是col 3(在file2.xls中) 文件1 col 2中的项目数 到目前为止,我在这个网站上找到和修改的脚本我在读取文件1并将其写入文件3.我使用多个if语句,并在其中我放置来自file2.xls.But的信息这是做的方式1996年我上次写Paskal时的工作:)。我相信还有其他方式 - Python方式。对不起我的英语,并提前感谢所有人。祝你有愉快的一天

book = xlrd.open_workbook("C:/~/User/Desktop/program/file1.xls")
book1 = xlrd.open_workbook("C:/~/User/Desktop/program/file3.xls")
sheet = book.sheet_by_index(0)
wb = copy(book1)
s = wb.get_sheet(0)
for r in xrange(2, sheet.nrows):
    d = sheet.cell(r,0).value
    items.append(d)
book = xlrd.open_workbook("C:/~/User/Desktop/program/file2.xls")
sheet = book.sheet_by_index(0)

这是我需要帮助的地方

项包含file1.xls的col 1中的元素列表 我想比较项目中的每个元素 到file2.xls的col 1中的每个元素 如果file3.xls中有匹配,我想从file2.xls写col 1 col 2和col 3 写作我使用s.write(x,0,'匹配项')

1 个答案:

答案 0 :(得分:0)

请参阅此答案:Merge two tables (CSV) if (table1 column A == table2 column A)

如果您的输入文件可以是CSV,那么这可能就是您正在寻找的内容。

如果您的文件必须是.xls,那么您可以在Python中使用xlrdxlwt(您似乎已经找到了它!)。