解决Python FileNotFoundError的问题

排查解决Python的FileNotFoundError报错问题

排查1:文件名与文件类型

原因:在代码中插入了错误的文件名,比如将readme.md错误的拼写为readwe.md或是readme.txt

解决方案:仔细核对文件名称

排查2:python字符串的转义

原因:在打开文件的字符串中,未免会涉及类似于C:\User\Desktop的地址字符串信息,而与python字符串中的转义功能冲突,如\n表示换行。

解决方案:使用r"C:\User\Desktop"C:\\User\\Desktop的字符串,避免python对字符串的转义。

排查3:相对路径的问题

原因:在python运行过程中,相对路径是该进程运行时指向的文件夹,并以该文件夹作为根节点的文件树,也就是说使用相对路径的方式打开文件,只能访问其根节点之下的文件。

解决方案:使用os库中提供的os.path.abspath() 方法查看python运行的绝对路径,与需要打开的文件目录进行比较。使用os.path.abspath('..')的方式返回父节点的绝对路径。如下图所示,如果python是运行在Folder2中,其打开file1时只需要open(r"file1","r"),但是如果需要打开File3,就需要open(os.path.abspath('..')+r'Folder3//File3',"r")的方式打开。其中os.path.abspath('..')返回的字符串信息是"...\\Folder1"

一个文件树

排查4:系统的问题

在Windows系统中,文件路径是由符号\来表示的,而在Linux中是由符号/来表示。如果代码需要在不同的系统上运行,需要注意修改。

排查5:Python运行位置

如果是此类问题的话,可以在文件的头部加入下面的代码

import sys
sys.path.append("../your/target/path/")

加入上面的代码,可以将文件的位置省略。如将open("../your/target/path/file.txt")省略为open("file.txt)即可。

排查6: 路径中存在中文(感谢@深情小智

重命名项目/目标文件夹。

我将陆续记录遇到的该报错的解决方案。

  • 49
    点赞
  • 137
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
### 回答1: filenotfounderrorPython中的一个异常类型,表示文件未找到错误。当Python尝试打开一个不存在的文件时,就会引发filenotfounderror异常。这通常是由于文件名或路径错误、文件被移动或删除等原因导致的。要解决这个问题,可以检查文件名和路径是否正确,或者确认文件是否存在。 ### 回答2: Python中的FileNotFoundError是一个常见的错误类型,发生在文件操作时,表示无法找到指定的文件或目录。当你尝试打开一个不存在的文件或目录时,就会引发这个错误。 FileNotFoundError的主要原因是文件路径错误、文件名错误、文件不存在或没有访问文件的权限。处理这种错误需要注意几个问题: 首先要确定文件是否存在,可以使用os.path.exists()函数来判断文件是否存在。 其次,我们需要检查文件路径的正确性。如果文件路径不正确,那么就无法找到文件并打开,就会发生FileNotFoundError。正确的文件路径应该是绝对路径或相对路径。 最后,我们需要确定文件是否有读写权限。在某些情况下,文件不存在或没有访问权限也会导致FileNotFoundError错误。 当遇到FileNotFoundError错误时,我们可以使用try-except语句来处理。在try语句块中打开文件,如果有错误就会引发异常。在except语句块中可以输出错误信息,以便检查和排查问题。 总之,处理FileNotFoundError错误需要仔细检查文件路径是否正确,是否具有访问权限。如果文件确实存在并且路径正确,那么就可以使用try-except语句捕捉错误并输出错误信息。这样可以更好地排查问题并快速解决问题。 ### 回答3: Python中的FileNotFoundError是一个常见的错误,它意味着Python不能找到所请求的文件或目录。当Python运行程序时,它需要找到所有被引用的文件和目录。如果文件或目录不存在,则会发生FileNotFoundError。下面是一些可能导致FileNotFoundError的常见原因。 1.文件名或路径错误:这是最常见的FileNotFoundError的原因之一。如果文件名或路径不正确,Python将无法找到该文件或目录。 2.文件或目录不存在:如果文件或目录不存在,那么Python将无法找到该文件或目录,因此会出现FileNotFoundError。 3.权限问题:如果你试图打开一个需要管理员权限的文件或目录,则会发生FileNotFoundError解决FileNotFoundError的方法取决于出错的原因。下面是一些常见的解决方法。 1.检查文件名或路径是否正确:如果出现FileNotFoundError,请检查文件名或目录路径是否正确。确保文件名的大小写正确,并且没有任何错误的拼写和符号。 2.检查文件是否存在:检查文件或目录是否存在,如果没有找到,请尝试创建文件或目录。 3.检查权限:如果你需要管理员权限才能访问某个文件或目录,请确保你已经具有管理员权限。 总之,FileNotFoundErrorPython中的一个常见错误。要避免这个错误,你需要确保文件名或目录路径正确,文件或目录存在并且你拥有正确的权限。当出现FileNotFoundError时,你应该去查找发生错误的原因,然后采取相应的措施来解决它。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值