如何获取当前文件的目录路径?我试过了:
>>> os.path.abspath(__file__)
'C:\\python27\\test.py'
但我想要:
'C:\\python27\\'
原文由 Shubham 发布,翻译遵循 CC BY-SA 4.0 许可协议
如何获取当前文件的目录路径?我试过了:
>>> os.path.abspath(__file__)
'C:\\python27\\test.py'
但我想要:
'C:\\python27\\'
原文由 Shubham 发布,翻译遵循 CC BY-SA 4.0 许可协议
使用 Path
来自 pathlib
是自 Python 3 以来的推荐方式:
from pathlib import Path
print("File Path:", Path(__file__).absolute())
print("Directory Path:", Path().absolute()) # Directory of current working directory, not __file__
注意: 如果使用 Jupyter Notebook, __file__
不会返回预期值,因此必须使用 Path().absolute()
。
原文由 Ron Kalian 发布,翻译遵循 CC BY-SA 4.0 许可协议
4 回答4.4k 阅读✓ 已解决
4 回答3.8k 阅读✓ 已解决
1 回答3.1k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
1 回答4.4k 阅读✓ 已解决
1 回答3.8k 阅读✓ 已解决
1 回答2.8k 阅读✓ 已解决
特殊变量
__file__
包含当前文件的路径。从中我们可以使用pathlib
或os.path
模块获取目录。蟒蛇 3
对于正在运行的脚本的目录:
对于当前工作目录:
Python 2 和 3
对于正在运行的脚本的目录:
如果您的意思是当前工作目录:
请注意,
file
前后是两个下划线,而不仅仅是一个。另请注意,如果您以交互方式运行或从文件以外的其他内容(例如:数据库或在线资源)加载代码,则可能无法设置
__file__
因为没有“当前文件”的概念。上面的答案假设最常见的情况是运行文件中的 python 脚本。参考