我制作了一个python脚本,用于读取excel电子表格并返回单元格A39的值。我正在使用openpyxl库。
以下是给出错误的代码部分:
cFile = openpyxl.load_workbook('contacts.xlsx', read_only= True)
sheet = cFile.get_sheet_by_name('cSheet')
print sheet['A39'].value
不是打印单元格A39的值,而是在电子表格中为“38”,我收到以下错误:
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/zipfile.py", line 971, in open
raise BadZipfile("Bad magic number for file header")
zipfile.BadZipfile: Bad magic number for file header
电子表格'contacts.xlsx'不是压缩文件。它与python脚本位于同一文件夹中。我用Excel 2011制作了。有谁知道我为什么会收到此错误或者我如何解决它?
谢谢!
答案 0 :(得分:0)
当我遇到同样的错误时,我也无法理解该问题。 还可以使用openpyxl库。 我的根本问题是在使用某种多线程的同时打开并保存了一些文件。为了解决这个问题,我根据每个线程更改了文件名。您还可以使用一些锁。