python - 如何获取当前文件目录的完整路径?

标签 python directory

如何获取当前文件的目录路径? 我试过了:

>>> os.path.abspath(__file__)
'C:\\python27\\test.py'

但我想要:

'C:\\python27\\'

最佳答案

特殊变量__file__包含当前文件的路径。从中我们可以使用 pathlib 获取目录。或 os.path模块。

Python 3

对于正在运行的脚本的目录:

import pathlib
pathlib.Path(__file__).parent.resolve()

对于当前工作目录:

import pathlib
pathlib.Path().resolve()

Python 2 和 3

对于正在运行的脚本的目录:

import os
os.path.dirname(os.path.abspath(__file__))

如果你指的是当前工作目录:

import os
os.path.abspath(os.getcwd())

注意 file 前后是两个下划线,而不仅仅是一个。

另外请注意,如果您以交互方式运行或从文件以外的其他内容(例如:数据库或在线资源)加载代码,则可能不会设置 __file__,因为没有“”的概念当前文件”。上面的答案假设最常见的情况是运行文件中的 python 脚本。

引用文献

  1. pathlib在 python 文档中。
  2. os.path - Python 2.7 , os.path - Python 3
  3. os.getcwd - Python 2.7 , os.getcwd - Python 3
  4. what does the __file__ variable mean/do?

关于python - 如何获取当前文件目录的完整路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3430372/

相关文章:

python - 在 Python 中对元组列表进行排序

python - 如何使用 python 在具有许多相似行的大文件中获取特定行?

python - 在 kivy 退出时做点什么

windows -\Windows\versus\Windows\System32 - 文件位置约定

JavaScript 从不同的目录加载图像文件

python - 如何在 python 中合并或连接两个 midi 文件

python - 如何在slurm中导入cv2?

Perl readdir按顺序

java - 如何在我的应用程序中存储图像而无需提供图像的确切目录?

java - 检查文件夹和所有数据是否已存在