我试图编写一个程序,从excel文件的第一列(姓氏)中提取单元格,并在同一行中与其相邻的单元格文本中搜索该字符串。在
目前,我的代码如下:
import xlrd
workbook = xlrd.open_workbook("C:\Python27\Doc\Book3.xls")
worksheet = workbook.sheet_by_name("Sheet1")
num_rows = worksheet.nrows - 1
num_cells = worksheet.ncols - 1
curr_row = -1
while curr_row < num_rows:
curr_row += 1
row = worksheet.row(curr_row)
curr_cell = 2
while curr_cell < num_cells:
curr_cell += 1
cell_value = worksheet.cell_value(curr_row, curr_cell)
sh = workbook.sheet_by_index(0)
first_col = sh.col_values(2)
second_col = sh.col_values(3)
L = [first_col]
L1 = [second_col]
for i, j in enumerate(L):
if j in L1[i]:
print j
else:
print 'no'
当我手动生成列表时,我的代码似乎是“有效的”(即,只需一个L=['a'、'b'、'c']和L1=['Today a cata'、'Today b cat b']等的测试列表,但当我尝试使用xlrd创建列表时,得到的只是一个“no”打印输出,这非常令人困惑。我认为这与列表的索引方式有关,或者与列表的大小有关(A列有16000个名字,B列有大约5000000个文本)
如能提供任何帮助/建议,我们将不胜感激。我在网上见过很多类似任务的方法(这里也有),但我不知道如何将不同的方法集成到对我有效的东西中。在
非常感谢
试试看:
相关问题 更多 >
编程相关推荐