Python/xrld 读取行和列
我有一个特定结构的Excel文件。第一行是标题,第二行是名字,最后一行是数值。如果Excel文件只有三行,提取标题和数值并不难,但如果有100行和多列,我只需要获取标题和数值,而不需要任何名字和空行。
1 2 3
1 GroupOne Empty Empty
2 Jonh Elena Mike
3 45 100 500
4 Empty Empty Empty
5 GroupTwo Empty Empty
6 Lisa Ken Lui
7 100 300 400
等等。
正如你所看到的,每两个标题之间总是有一行空行。最后的结果应该是这样的:
GroupOne 45 100 500 GroupTwo 100 300 400
提前谢谢你。我会非常感激你的帮助。
1 个回答
11
我觉得这个 网站 上有个例子可以帮到你:
import xlrd
workbook = xlrd.open_workbook('my_workbook.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)
print 'Row:', curr_row
curr_cell = -1
while curr_cell < num_cells:
curr_cell += 1
# Cell Types: 0=Empty, 1=Text, 2=Number, 3=Date, 4=Boolean, 5=Error, 6=Blank
cell_type = worksheet.cell_type(curr_row, curr_cell)
cell_value = worksheet.cell_value(curr_row, curr_cell)
print ' ', cell_type, ':', cell_value
函数 cell_type
可以帮助你写一个判断语句,比如 if worksheet.cell_type != 0
,这样就可以跳过空的单元格了。