首页 > 解决方案 > “anaconda 提示”和“IPython 控制台”有什么区别?

问题描述

我安装了“Spyder”来尝试使用 openpyxl 解析一个 excel 文件。

首先,我编写了一个简单的 python 代码来读取一个 excel 文件并打印 shell 内容。

from openpyxl import load_workbook
testExcel=load_workbook('test.xlsx')
sheet1 = testExcel['Sheet1']
regs = []
for i in sheet1.rows:
    name = i[0].value
    minval = i[1].value
    maxval = i[2].value
    reg = (name, minval, maxval)
    regs.append(reg)
print(regs)

然后此代码使用“IPython 控制台”运行良好。

但是当我尝试使用“Anaconda prompt”而不是“IPython 控制台”以同样的方式运行时,这段代码没有运行。

错误信息如下所示。

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "D:\ProgramData\Anaconda3\lib\site-packages\openpyxl\reader\excel.py", line 174, in load_workbook
    archive = _validate_archive(filename)
  File "D:\ProgramData\Anaconda3\lib\site-packages\openpyxl\reader\excel.py", line 124, in _validate_archive
    archive = ZipFile(f, 'r', ZIP_DEFLATED)
  File "D:\ProgramData\Anaconda3\lib\zipfile.py", line 1108, in __init__
    self._RealGetContents()
  File "D:\ProgramData\Anaconda3\lib\zipfile.py", line 1175, in _RealGetContents
    raise BadZipFile("File is not a zip file")
zipfile.BadZipFile: File is not a zip file

所以我认为“Anaconda prompt”和“IPython console”在操作上是有区别的。

请让我知道。

提前致谢。

标签: pythonanacondaspyderopenpyxl

解决方案


推荐阅读