【发布时间】:2022-08-03 18:15:24
【问题描述】:
我又遇到了那个著名的异常。 问题如下: 我想写一个简单的代码来简单练习一下我必须为我的 python 编程课程制作的文件和 excel 库(openpyxl)。首先,我不得不说我通常在 iOS 中编写所有代码。 这一次,我想在我的旧电脑上做这个练习,它的操作系统。是 Windows,所以我已将我在 iOS 中工作的文件导出到笔式驱动器中,然后将该文件导出到我的 Windows 桌面。 我打开 VSC 并且第一行代码是问题,因为我尝试加载 excel 文件但出现异常 FileNotFoundError。
就像写一样简单:
import openpyxl
fw = openpyxl.load_workbook(\"Data_File_2.xlsx\")
我编写代码时的文件位于以下路径中:C:\\Users\\xxxx\\Desktop\\pyWork 这与文件“Data_File_2”所在的路径相同。 好吧,问题仍然存在,因为每次我想编写用于处理 extern 文件的新代码时,都会再次出现此异常,即使是我在使用 extern 文件时创建的其他 \'py\' 文件,现在我可以\' t 运行,因为此异常再次出现并阻止程序。 (我说的是前几天或几周内制作的旧文件,它们可以与外部文件一起正常工作) 例如,现在我试图从一个新的 py.file 中打开一个 try 文件 .txt,它们都位于同一个目录中:
with open(\"try_to_open.txt\",\"r\") as op_file:
rfile = op_file.read()
print(rfile)
#异常FileNotFoundError再次出现在第一行。
我知道我可以使用 try/else 块,但我想知道为什么会出现这个异常,在这种情况下的错误是什么,以及为什么每次我想使用外部文件时出现异常,但它会在第一次出现时出现。
-
例如,现在我试图从一个新的 py.file 中打开一个 try 文件 .txt,它们都位于同一个目录中他们在同一个目录中并不重要。
open()正在查看当前的目录,这是不一样的。 -
如果您仍然不确定,您可以使用 print(os.getcwd()) (import os) 来获取当前工作目录和/或使用绝对路径。您甚至可以进一步检查文件是否存在于预期目录中。
-
你可以试试:导入系统然后 sys.path.insert(1, \"<past/absolute/path>\") 请记住将 \\ 更改为绝对路径的 / 。我认为有了这个你应该没问题,否则你必须证明一些清晰的代码,我认为有人可以提供更好的解决方案。
-
嗨@moken,我使用过 os.getcwd() 但正如我所说,该打印的结果是一条以文件所在目录结束的路由。但是,当我运行程序时仍然出现异常,我不知道为什么。在这条路线的最后一个目录中是 .xlsx 和 .py 文件,但是当我尝试加载 (openpyxl.load_workbook(\"datafile.xlsx\") VSC 中的 excel 文件时,会出现异常 FileNotFoundError。
标签: python openpyxl filenotfoundexception file-not-found filenotfounderror