17python

Python os.path.dirname(__file__) 在终端命令行下报错

最近在写程序中用到了os.path.dirname(__file__),在PyCharm中启动程序调试的时候,是没有问题的,但是如果在终端命令行下运行程序时就会报错

FileNotFoundError: [Errno 2] No such file or directory

我们先来测试一下,看看报错是什么样的?

print(os.path.dirname(__file__))

如果在终端运行当前程序就会报错:

>>> print(os.path.dirname(__file__))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'os' is not defined

如何使之正确运行呢?如果你用过Django,就会想到BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))), 这个是Django里用来定义当前文件所属目录的一行代码,后来我查询了一下,其中os.path.abspath(__file__)这条是返回当前文件的绝对地址, 而os.path.dirname(os.path.abspath(__file__))就是返回当前文件所在的目录的绝对地址,这样我们就轻松的得到当前文件所属目录了。 困扰人生的小问题就这样绝对喽!

本文源码下载:

相关标签
About Me
J.sky
你那么喜欢看“干货”,是因为你根本不想下什么功夫;你自以为的极限,其实只是别人的起点。
Category
标签云
站点统计

本站现有博文86篇,共被浏览69256

据官网介绍,2020年4月Python2.7将不会被维护!距离Python2.7停止维护还有493天!

热门文章
文章归档
回到顶部