首先检查文件路径是否正确,确认使用相对或绝对路径、拼写、大小写及斜杠方向无误;其次验证当前工作目录与文件位置一致,可用os.getcwd()查看并用os.path.exists()判断文件是否存在;最后推荐通过__file__动态构建路径,确保脚本在不同运行环境下正确找到文件。

遇到FileNotFoundError错误时,说明python无法找到你指定的文件。这个错误常见但容易解决,关键在于确认文件路径和程序运行环境是否匹配。
检查文件路径是否正确
最常见的原因是路径写错。请确认以下几点:
- 使用的是相对路径还是绝对路径?相对路径是相对于当前工作目录的
- 拼写是否有误,包括文件名、扩展名(如 .txt、.csv)大小写是否正确
- 路径中的斜杠方向是否合适:windows用反斜杠,但在代码中建议使用正斜杠/或双反斜杠
例如,正确写法可以是:‘data/file.txt’ 或 ‘C:/project/data.txt’
确认当前工作目录
Python运行时有一个“当前工作目录”,相对路径基于此目录查找文件。可以用以下代码查看:
立即学习“Python免费学习笔记(深入)”;
import os
print(os.getcwd())
如果文件不在该目录下,要么移动文件,要么调整路径。也可以用os.chdir()切换目录,但更推荐使用明确路径。
确保文件确实存在
有时文件被误删、未下载完成或命名不一致(如多了一个空格)。建议:
- 手动打开资源管理器确认文件是否存在
- 使用os.path.exists(‘文件路径’)提前判断
- 示例代码:
if os.path.exists(‘data.csv’):
with open(‘data.csv’) as f:
content = f.read()
else:
print(“文件不存在,请检查路径”)使用__file__动态构建路径(推荐)
如果你的脚本和文件放在同一目录,可以用__file__获取脚本所在路径,避免路径依赖问题:
import os
script_dir = os.path.dirname(__file__)
file_path = os.path.join(script_dir, ‘data.txt’)
with open(file_path, ‘r’) as f:
content = f.read()这样无论从哪里运行脚本,都能正确找到同目录下的文件。
基本上就这些。关键是搞清路径从哪算起,文件到底在哪。只要路径对了,问题就解决了。