Python 之__file__

在Python项目中,经常会获取文件的路径。经常会见到如下的语句:

1
2
import os
os.path.dirname(__file__)

那么这里的__file__是什么用呢?

其实就是当前脚本运行的路径。

但是也会分不同的情况。

如果执行命令时使用绝对路径,__file__就是脚本的绝对路径。

如果使用的是相对路径,__file__就是脚本的相对路径。

如果在交互式环境中,则会爆出异常。因为此时__file__并未生成。

1
2
3
4
5
6
7
8
9
In [2]: import os

In [3]: print os.path.dirname(__file__)
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-3-b4616cfaa58d> in <module>()
----> 1 print os.path.dirname(__file__)

NameError: name '__file__' is not defined

Python 之__file__
https://flepeng.github.io/021-Python-42-核心概念-Python-之-file/
作者
Lepeng
发布于
2021年7月30日
许可协议