Python Excel xlwings,读取Excel文件数据

xlwings 既能读取写入 xls,也能读取写入 xlsx,速度也不错,算是比较好的PythonExcel操作库,

唯一的问题就是,开发的时候,如果电脑没有微软的Office,会比较麻烦,甚至不能使用。


start_row = 2  # 处理Excel文件开始行
end_row = 10  # 处理Excel结束行

row_content = []
excel_path = os.getcwd() + '/resources/settings.xlsx'
app = xw.App(visible=False, add_book=False)
wb = app.books.open(excel_path)  # 打开Excel文件
sheet = wb.sheets[0]  # 选择第0个表单
try:
    for row in range(start_row, end_row):
        row_str = str(row)
        # 循环中引用Excel的sheet和range的对象,读取B列和C列的每一行的值,对比计算
        item = dict()
        site_id = sheet.range('A' + row_str).value
        if site_id is None or site_id == '':
            break
        item['id'] = int(site_id)
        item['short_name'] = sheet.range('B' + row_str).value
        item['full_name'] = sheet.range('C' + row_str).value
        item['title'] = sheet.range('D' + row_str).value
        item['username'] = sheet.range('E' + row_str).value
        item['password'] = sheet.range('F' + row_str).value
        item['url'] = sheet.range('G' + row_str).value
        row_content.append(item)
except Exception as e:
    e.with_traceback()
finally:
    wb.close()
print(row_content)
return row_content