您的位置:

以 Python 获取当前文件路径为中心的方法

引言

在编写 Python 程序时,我们经常需要处理文件,此时获取当前文件所在路径十分重要。在本篇文章中,我们将探讨如何使用 Python 获取当前文件路径。

获取当前文件路径的方法

方法一:使用 os 模块

Python 的 os 模块提供了获取文件路径的方法。

import os

current_path = os.path.abspath(__file__)

print("当前文件路径是:", current_path)

通过调用 os 模块的 path.abspath() 方法获取绝对路径,传入的参数是#__file__,表示当前脚本文件的绝对路径。

可以使用 os.path.dirname() 获取当前文件所在的目录路径。

import os

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

print("当前文件所在目录路径是:", dir_path)

通过调用 os 模块的 path.dirname() 方法获取当前文件所在目录的路径。

方法二:使用 pathlib 模块

Python 3.4 引入了 pathlib 模块,使用它可以更加简单地获取文件路径。

from pathlib import Path

current_path = Path(__file__).resolve()

print("当前文件路径是:", current_path)

Path 对象的 __file__ 属性返回当前脚本文件所在的路径,再使用 Path 的 resolve() 方法获取绝对路径。

还可以使用 Path 的 parent 属性获取当前文件所在的目录路径。

from pathlib import Path

current_path = Path(__file__).resolve()
dir_path = current_path.parent

print("当前文件所在目录路径是:", dir_path)

方法三:使用 inspect 模块

inspect 模块提供了获取当前文件路径的方法。

import inspect

current_path = inspect.getfile(inspect.currentframe())

print("当前文件路径是:", current_path)

inspect.getfile() 方法返回当前脚本文件的路径。

不推荐使用 inspect 模块获取当前文件路径,因为它有一些明显缺陷——在某些 Python 解释器中可能不起作用,因此,它的使用受到了限制。

总结

在本文中,我们讨论了 Python 中获取当前文件路径的三种方法。os 模块是最常用的方法,而 pathlib 模块和 inspect 模块也提供了很有用的函数。

小节:

  1. 在 Python 中,如何获取当前文件所在路径?

  2. 可以使用 os 模块、pathlib 模块和 inspect 模块中的方法获取当前文件路径。

  3. 如何获取当前文件所在目录的路径?

  4. 使用 os.path.dirname() 或 Path.parent 属性可以获取当前文件所在目录的路径。