如何彻底解决python NameError:name '__file__' is not defined

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

如何彻底解决python NameError:name '__file__' is not defined

龙小马   2023-03-20 我要评论

问题背景

我创建了一个函数,里面包含了一个获取当前执行文件路径的代码

current_path = os.path.dirname(os.path.abspath(__file__))

我把这段代码放在了函数中间位置(图片中已经被注释掉的部分)。

在CMD窗口执行python文件时,报NameError: name ‘file’ is not defined错误。(也在linux中执行过,同样报错)

查找了几个方案(比如,下图所示),有说要把__file__改成’file’的(这个根本就是扯淡),还有说要把os.path.abspath改成os.getcwd()的(获取的是执行命令的当前路径)。

测试了这几个方案,并不能获取当前执行文件的绝对路径。

解决方案

因为以前我的这段代码是可以正常执行的,改过之后就出现了这个错误。

各种百度、琢磨,一晚之后,翌日清晨,我把这段代码放在了函数的最开始位置。然后测试成功了!成功了!成功了!

这段代码就可以正常获取当前文件的路径而不报错误!

记录下自己的踩坑之路,以便遇到相同坑的人能尽快跳出!!

总结

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们