Я использую Python 2.7.11 на Ubuntu.Python: объект «NoneType» не имеет атрибута «decpressobj»
Я пытаюсь открыть файл Excel (.xlsx) в Python с помощью пакета xlrd
. Однако я получаю следующее сообщение об ошибке при попытке использовать функцию open_workbook()
из пакета, чтобы открыть свой файл Excel:
Traceback (most recent call last):
File "TileInserter.py", line 15, in <module>
book = open_workbook(sheetPath, on_demand=True)
File "/usr/local/lib/python2.7/site-packages/xlrd/__init__.py", line 422, in open_workbook
ragged_rows=ragged_rows,
File "/usr/local/lib/python2.7/site-packages/xlrd/xlsx.py", line 761, in open_workbook_2007_xml
zflo = zf.open(component_names['xl/_rels/workbook.xml.rels'])
File "/usr/local/lib/python2.7/zipfile.py", line 1010, in open
close_fileobj=should_close)
File "/usr/local/lib/python2.7/zipfile.py", line 526, in __init__
self._decompressor = zlib.decompressobj(-15)
AttributeError: 'NoneType' object has no attribute 'decompressobj'
Я пытался Google причины этой ошибки и обнаружил, что это может произойти, если zlib
библиотеки не установлен. Но когда я проверил использование функции PHP phpinfo()
, она показывает, что установлен zlib
. И это тоже самая последняя версия (версия 1.2.8).
Так что я сейчас застрял. Кто-нибудь знает, как решить эту проблему?
EDIT: Мой реальный код в TileInserter.py
идет как это (TileInserter.py
и TileList.xlsx
быть в том же каталоге):
from xlrd import open_workbook
sheetPath = "TileList.xlsx"
#some more variables
#Open Excel file
book = open_workbook(sheetPath, on_demand=True)
for name in book.sheet_names():
if name.endswith('1'):
sheet = book.sheet_by_name(name)
Пожалуйста, сообщите свой код –