迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

Python File Not Found 错误

作者:迹忆客 最近更新:2023/07/05 浏览次数:

FileNotFoundError 是一个常见错误,当 Python 无法找到要打开的文件时就会出现该错误。 本文将讨论Python中的 FileNotFoundError 及其解决方案。


Python 中的文件 I/O

Python 具有用于修改文件的内置函数。 文件是存储在计算机存储设备中的对象。

Python 的 open() 函数用于打开文件。 它有两个参数。

参数 说明
filename 您要打开的文件的名称。
mode 您要对文件执行的操作。

有多种模式允许不同的操作。

模式 使用
r 打开并读取已存在的文件。
a 打开并将数据附加到已存在的文件中。
w 打开现有文件以将数据写入其中。 如果不存在同名文件,则创建一个新文件。

Python中FileNotFoundError的原因

打开文件时,如果Python找不到要打开的指定文件,可能会出现 FileNotFoundError 错误。 下面的示例代码将产生随后的错误。

示例代码:

#Python 3.x
file = open('text.txt','r')

输出:

#Python 3.x
Traceback (most recent call last):
  File "c:/Users/LEO/Desktop/Python/main.py", line 2, in <module>
    datafile = open('text.txt','r')
FileNotFoundError: [Errno 2] No such file or directory: 'text.txt'

原因 1 - 当前目录中不存在文件

通常,主要原因是该文件不在运行代码的同一文件夹中。 默认情况下,open() 函数在代码文件所在的同一文件夹中查找文件。

假设目录结构如下所示。

code.py
my_folder
---my_file.txt

如果用户使用以下代码打开 my_file.txt,则会引发错误。

示例代码:

#Python 3.x
file = open('my_file.txt','r')

输出:

#Python 3.x
---------------------------------------------------------------------------
FileNotFoundError                         Traceback (most recent call last)
<ipython-input-4-0fc1710b0ae9> in <module>()
----> 1 file = open('my_file.txt','r')
FileNotFoundError: [Errno 2] No such file or directory: 'my_file.txt'

原因 2 - 文件名或扩展名不正确

如果即使文件位于正确的目录中也遇到错误,则用户指定了不正确的文件名或扩展名。

假设用户有一个名为 my_file.txt 的文件。 如果文件名或扩展名不正确,这两种情况都会出现错误。

示例代码:

#Python 3.x
file = open('my_file2.txt','r')

输出:

#Python 3.x
---------------------------------------------------------------------------
FileNotFoundError                         Traceback (most recent call last)
<ipython-input-5-4dd25a062671> in <module>()
----> 1 file = open('my_file2.txt','r')
FileNotFoundError: [Errno 2] No such file or directory: 'my_file2.txt'

这是另一个例子。

示例代码:

#Python 3.x
file = open('my_file.jpg','r')

输出:

#Python 3.x
---------------------------------------------------------------------------
FileNotFoundError                         Traceback (most recent call last)
<ipython-input-6-d1645df0ff1f> in <module>()
----> 1 file = open('my_file.jpg','r')
FileNotFoundError: [Errno 2] No such file or directory: 'my_file.jpg'

现在我们来讨论一下Python中FileNotFoundError的解决方案。

解决方案 1 - 指定完整的文件路径

首先要检查目标文件是否位于正确的文件夹中。 如果它与代码文件不在同一文件夹中,则应将其移动到与代码文件同一文件夹中。

如果这不是一个选项,那么您应该在打开函数的文件名参数中给出完整的文件路径。 文件路径在 Windows 上的工作方式如下:

C:\Users\username\filename.filetype

文件的完整路径必须在 open() 函数中给出。 下面提到了带有虚拟路径的示例代码。

示例代码:

#Python 3.x
file = open(r"C:\Folder1\Subfolder1\text.txt")

解决方案 2 - 指定正确的文件名和扩展名

您可以重新检查要打开的文件名和扩展名。 然后在open()方法中写入它的正确名称。

假设您要打开 my_file.txt。 代码如下所示。

示例代码:

#Python 3.x
file = open('my_file.txt','r')

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Python 中错误 Address Already in Use

发布时间:2023/07/09 浏览次数:173 分类:Python

我们将通过示例介绍Python中何时出现 Address already in use 错误以及如何解决。Python 中的错误Address already in use 本文将讲述运行使用端口的程序时发生的Python堆栈错误。

Python 中错误 ValueError: Math Domain Error

发布时间:2023/07/09 浏览次数:607 分类:Python

在本篇文章中,我们的目标是探索解决 Python 中的 ValueError: math domain error 错误的不同方法。当编码方面数学(基础或高级)的使用存在固有缺陷时,Python 中通常会引发 ValueError: math domain error 错

Python 错误 Name xrange Is Not Defined

发布时间:2023/07/09 浏览次数:153 分类:Python

本篇文章将介绍如何解决 Python 中 name 'xrange' is not defined 的错误。解决Python中name 'xrange' is not defined错误 让我们尝试理解为什么会发生这个特定的错误。 让我们首先尝试复制这个问题。

Python 中错误 AttributeError: __Enter__

发布时间:2023/07/09 浏览次数:2241 分类:Python

在 Python 中,AttributeError 是在未定义 __enter__ 函数的情况下通过 with 语句使用类的对象时导致的错误。

Python 错误 Error: Invalid Command Bdist_wheel

发布时间:2023/07/09 浏览次数:847 分类:Python

在 Python 中构建 wheel 时,有时 setup.py 可能会退出并出现错误 invalid command 'bdist_wheel'。 本篇文章将讨论在 Python 中解决此问题的可能解决方案。安装wheel包来修复Python中 Error:invalid command 'bdist_

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便