【问题标题】:Unable to import .xlsx into Python: No such file or directory无法将 .xlsx 导入 Python:没有这样的文件或目录
【发布时间】:2015-12-09 04:06:59
【问题描述】:

我正在尝试将数据从 HW3_Yld_Data.xlsx 导入 Python。我确保 Excel 文件与 Python 文件位于同一目录中。这是我写的:

import pandas as pd

Z = pd.read_excel('HW3_Yld_Data.xlsx')

这是我得到的错误:

In [2]: import pandas as pd
   ...: 
   ...: Z = pd.read_excel('HW3_Yld_Data.xlsx')
Traceback (most recent call last):

  File "<ipython-input-2-7237c05c79ba>", line 3, in <module>
    Z = pd.read_excel('HW3_Yld_Data.xlsx')

  File "/Users/Zhengnan/anaconda/lib/python2.7/site-packages/pandas/io/excel.py", line 151, in read_excel
return ExcelFile(io, engine=engine).parse(sheetname=sheetname, **kwds)

  File "/Users/Zhengnan/anaconda/lib/python2.7/site-packages/pandas/io/excel.py", line 188, in __init__
self.book = xlrd.open_workbook(io)

  File "/Users/Zhengnan/anaconda/lib/python2.7/site-packages/xlrd/__init__.py", line 394, in open_workbook
f = open(filename, "rb")

IOError: [Errno 2] No such file or directory: 'HW3_Yld_Data.xlsx'

令人难以置信的是它曾经运行良好。在我昨天执行“conda update --all”后,它似乎停止工作了。

顺便说一句,我使用 Spyder 作为 IDE。请帮忙。谢谢。

【问题讨论】:

    标签: python python-2.7 anaconda spyder


    【解决方案1】:

    不要使用相对路径,而是使用 xlsx 的完整路径进行测试。您的 conda 更新可能改变了您的环境。

    您可以尝试这样的方法来测试它:

    import os
    pre = os.path.dirname(os.path.realpath(__file__))
    fname = 'HW3_Yld_Data.xlsx'
    path = os.path.join(pre, fname)
    Z = pd.read_excel(path)
    

    【讨论】:

      【解决方案2】:

      操作系统中的每个进程都有一个current working directory。任何相对路径都是相对于当前工作目录的。

      当前工作目录设置为您启动进程的目录。这在使用命令行时很自然,但对于只使用 GUI 的人来说会感到困惑。

      您可以使用os.getcwd() 检索它,也可以使用os.chdir() 更改它。当然,您也可以在启动脚本之前更改它。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-01-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-07
        • 2018-11-17
        • 2023-03-06
        • 2019-01-08
        相关资源
        最近更新 更多