用python解析excel文档

2024-05-14 05:08:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用Python把excel文档解析成列表。 有没有一个python库对这个操作有帮助? 那个图书馆有什么相关的功能?


Tags: 文档功能列表图书馆excel
3条回答

解析Excel文件的最佳方法是xlrd库。python-excel.org站点提供了xlrd和相关python excel库的链接和示例,包括一个pdf document,其中有一些使用xlrd的好示例。当然,StackOverflow上也有很多related xlrd questions可能有用。

xlrd库的一个警告是,它只适用于xls(Excel 2003和早期版本的Excel)文件格式,而不适用于较新的xlsx文件格式。有一个新的库openpyxl用于处理xlsx,但我从未使用过它。

更新: 根据John的评论,xlrd库现在同时支持xlsxlsx文件格式。

希望能有所帮助。

pandas library有一个快速而简单的方法来读取excel。如果基本上只是数据,没有太复杂的东西,那就行了:

import pandas as pd
ex_data = pd.read_excel('excel_file.xlsx')

它将其读入一个pandas DataFrame,这对于数据咀嚼等很方便

要转到列表:

ex_data['column1_name'].values.tolist()

如果每个工作表中有多个表和内容,则可能需要使用另一个库,如xlrd或openpyxl。

openpyxl是一个很棒的库,支持对2010 xlsx文件的读/写。

示例分析代码

from openpyxl import load_workbook
wb = load_workbook('Book1.xlsx')
ws = wb.active
for row in ws.iter_rows():
   for cell in row:
     print cell.value

编写代码示例

from openpyxl import Workbook
from openpyxl.utils import get_column_letter

wb = Workbook()

dest_filename = 'empty_book.xlsx'

ws1 = wb.active
ws1.title = "range names"

for row in range(1, 40):
    ws1.append(range(600))
wb.save(filename = dest_filename)

您可以在这里阅读更多内容:https://openpyxl.readthedocs.io/en/stable/index.html

相关问题 更多 >