import xlrd
workbook = xlrd.open_workbook('esc_data.xlss')
workbook = xlrd.open_workbook('esc_data.xlsx', on_demand = True)
worksheet = workbook.sheet_by_index(0)
first_row = [] # Header
for col in range(worksheet.ncols):
first_row.append( worksheet.cell_value(0,col) )
# tronsform the workbook to a list of dictionnaries
data =[]
for row in range(1, worksheet.nrows):
elm = {}
for col in range(worksheet.ncols):
elm[first_row[col]]=worksheet.cell_value(row,col)
data.append(elm)
print data
此脚本允许将xls文件转换为词汇列表, 列表中的所有dict表示一行
是的,您正在查找
col_values()
工作表方法。而不是你必须这么做
其中
columnindex
是列的编号(从零开始计算,因此A列是索引0,B列是索引1,等等)。如果在第一行(或前几行)中有一个描述性标题,则可以给出第二个参数,该参数指示从哪一行开始(同样,从零开始计数)。例如,如果有一个标题行,因此希望值从第二行开始,则可以有关} documentation 更难阅读。)
xlrd
包的合理可读性讨论,请查看tutorial。(官方的^{还请注意:(1)当您可以自由使用名称
arrayofvalues
时,实际上得到的是一个Python列表,从技术上讲,它不是一个数组;(2)当使用.xlsx文件时,on_demand
工作簿参数不起作用,这意味着xlrd
将尝试将整个工作簿加载到内存中,而不管怎样。(功能on_demand
适用于.xls文件。)相关问题 更多 >
编程相关推荐