引言
在编写 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 模块也提供了很有用的函数。
小节:
在 Python 中,如何获取当前文件所在路径?
如何获取当前文件所在目录的路径?
可以使用 os 模块、pathlib 模块和 inspect 模块中的方法获取当前文件路径。
使用 os.path.dirname() 或 Path.parent 属性可以获取当前文件所在目录的路径。