Reading/parsing Excel (xls) файлы с Python

Есть ли способ получить имена и значения переменных в области видимости?

Нет.

107
задан Peter Mortensen 4 August 2012 в 23:27
поделиться

3 ответа

Если Вам нужен старый формат XLS. Ниже кода для ansii 'cp1251'.

import xlrd

file=u'C:/Landau/task/6200.xlsx'

try:
    book = xlrd.open_workbook(file,encoding_override="cp1251")  
except:
    book = xlrd.open_workbook(file)
print("The number of worksheets is {0}".format(book.nsheets))
print("Worksheet name(s): {0}".format(book.sheet_names()))
sh = book.sheet_by_index(0)
print("{0} {1} {2}".format(sh.name, sh.nrows, sh.ncols))
print("Cell D30 is {0}".format(sh.cell_value(rowx=29, colx=3)))
for rx in range(sh.nrows):
   print(sh.row(rx))
0
ответ дан 24 November 2019 в 03:41
поделиться

Я настоятельно рекомендую xlrd для чтения файлов .xls .

voyager упомянул использование автоматизации COM. Сделав это сам несколько лет назад, имейте в виду, что это настоящая PITA. Количество замечаний огромно, а документации не хватает и это раздражает. Я столкнулся с множеством странных ошибок и подводных камней, на выяснение некоторых из которых потребовалось много часов.

ОБНОВЛЕНИЕ: для новых файлов .xlsx рекомендуемая библиотека для чтения и записи выглядит как openpyxl (спасибо, Икар Погорски).

90
ответ дан 24 November 2019 в 03:41
поделиться

Вы можете использовать любую из библиотек, перечисленных здесь (например, Pyxlreader, основанный на JExcelApi, или xlwt), плюс COM автоматизация для использования самого Excel для чтения файлов, но для этого вы вводите Office как зависимость вашего ПО, что не всегда возможно.

1
ответ дан 24 November 2019 в 03:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: