Я хочу проанализировать документ excel для списков в Python. Есть ли библиотека python, которая полезна для этого действия? И какие функции релевантны в этой библиотеке?
Анализ документов excel с помощью python
Ответ 1
Лучше всего для анализа файлов Excel будет xlrd библиотека. На сайте python-excel.org есть ссылки и примеры для xlrd и связанные с ними библиотеки excel python, в том числе pdf-документ, в котором есть хорошие примеры использования xlrd. Конечно, в StackOverflow также может быть много связанных вопросов xlrd.
Одно из предостережений с библиотекой xlrd заключается в том, что оно будет работать только с форматами файлов xls
(Excel 2003 и более ранние версии excel), а не с более последним форматом файла xlsx
. Существует более новая библиотека openpyxl для работы с xlsx
, но я никогда не использовал ее.
UPDATE:
Согласно комментарию Джона, библиотека xlrd теперь поддерживает форматы файлов xls
и xlsx
.
Надеюсь, что это поможет.
Ответ 2
xlrd отлично подходит для простых задач, но если вам нужно работать с любой из более глубоких функциональных возможностей Excel (макросы, расширенные построения и т.д.), и вы работаете на машине Windows, вы можете использовать библиотеку pywin32 для управления win32com слой. Это обеспечивает доступ ко всему, что можно контролировать с помощью макросов /Visual Basic.
Ответ 3
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
Ответ 4
pandas library имеет быстрый и простой способ прочитать excel. Если это в основном просто данные и ничего сложного, это сработает:
import pandas as pd
ex_data = pd.read_excel('excel_file.xlsx')
Он читает его в pandas DataFrame, который удобен для перехвата данных и т.д.
Чтобы перейти к списку:
ex_data['column1_name'].values.tolist()
Если у вас несколько таблиц и вещей на каждом листе, вы можете захотеть использовать другую библиотеку.
Ответ 5
Если вы хотите разобрать xlsx
попробовать python-xlsx
Ответ 6
pyExcelerator, похоже, больше не поддерживается, но я использовал его довольно долгое время и мне очень понравилось Это.
Ключевые моменты:
- Независимость от платформы
- Не требуется установка Excel (это не означает, что COM-связь)
Обновить
Все мои новые проекты переместились в xlrd.