我有一张带有样本数据的xlsx表,如下所示。
fileinfo: sample file | DateCreated: 09/23/2013 | Country: Japan
Num. | Name | Age | Sex | Country
1 | Mark | 45 | M | Australia
2 | Steve| 50 | M | United kingdom
3 | Julia| 35 | F | USA
fileinfo: sample file | DateCreated: 09/23/2013 | Country: Japan
Num. | Name | Age | Sex | Country
1 | Ronald | 64 | M | USA
2 | Micheal| 52 | M | China
3 | Zed | 35 | F | USA
该文件包含文件中任何位置的fileinfo行以及文件中的有多少次。我需要确保我没有在我的代码中捕获它们。
在xlrd中是否有一种方法可以将标题和数据捕获到字典中,而在此示例中仅保留文本数据,即文件信息行。
这是我到现在为止的代码。
import xlrd
def importXLSX(fileName):
with xlrd.open_workbook(fileName) as wb:
worksheet = wb.sheet_by_index(0)
total_rows = worksheet.nrows
num_rows, curr_row = worksheet.nrows, 0
keys = [x.value for x in worksheet.row(1)]
data = dict((x, []) for x in keys)
while curr_row < num_rows:
curr_row += 1
for i, val in enumerate(worksheet.row(curr_row+1)):
data[keys[i]].append(val)
return data
data = importXLSX('simple.xlsx')
print data
答案 0 :(得分:1)
我终于找到了办法。当单元格为空时,XLRD返回零。所以我能够将行与空列进行比较并找出哪些是标题行并将它们添加到列表中,最后迭代并打印它们。