python引入文件出错_解决Python在导入文件时的FileNotFoundError问题

当Python在导入文件时出现FileNotFoundError,通常是因为文件路径不正确或文件夹不存在。确保文件与运行的.py文件在同一目录,或使用绝对路径。如在keras中导入模型图,需保证图片路径正确。另外,对于类似'objects/epsilon.pkl'的错误,可能是文件夹未创建,使用os库检查并创建缺失的文件夹路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

例如,在运行这段代码时

from keras.utils import plot_model

plot_model(model, to_file='images/model_mnist.png', show_shapes=True, show_layer_names=True)

会报错

In [8]: FileNotFoundError: [Errno 2] No such file or directory: 'images/model_mnist.png'

此时运行的py文件名称为

temp.py

要导入的文件在temp.py的同级的目录images文件夹下那么应该保证要导入的文件

imagesmodel_mnist.png

要跟前面的temp文件在同一目录(不满足,可把imagesmodel_mnist.png移到temp.py同一目录下)或者是提供要导入的文件的完整目录即写作绝对路径如下:

from keras.utils import plot_model

plot_model(model, to_file='C:/Users/MMIS/.spyder-py3/imagesmodel_mnist.png', show_shapes=True, show_layer_names=True)

再次尝试导入,控制台提示导入成功:

In [9]: plot_model(model, to_file='C:/Users/MMIS/.spyder-py3/images/model_mnist.png', show_shapes=True, show_layer_names=True)

补充知识:Python:错误FileNotFoundError: [Errno 2] No such file or directory: 'objects/epsilon.pkl

前言

看微信推送了一个好玩的应用强化学习dinosrun,但是在运行时,遇到了这个问题,百思不得其解:

FileNotFoundError: [Errno 2] No such file or directory: ‘objects/epsilon.pkl

经过学习,发现了解决方案:

解释

没有该文件夹或者该文件,也就是你访问了不存在的文件,但其实你访问的文件如果不存在,切访问用的是w方法的法,是会新建文档的,所以问题主要是,没有这个文件夹,新建即可。

详细解释

python,os库对于文件的读写,是有要求的。由于你的文件的打开方式是'w',也就是文件不存在时就创建文件,所以那个pkl文件(我指的是相对路径中的pkl)不存在会自动创建,这不是问题,问题就在于那个相对路径,就是那个path是否存在,这个文件夹不存在一样会出问题。所以先要判断这个path是否存在。不存在则创建。

import os

if not os.path.exists(path):

os.mkdir(path)

而且需要注意,对于路径一次只能创建一层,就是说你objects的上一层的存在,不然还是会出错。

以上这篇解决Python在导入文件时的FileNotFoundError问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值