You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python获取当前目录仅返回根目录,求问题原因与解决方法

问题原因及解决方法

核心原因

你混淆了当前Python进程的工作目录和脚本文件所在的目录:

  • Path().absolute()或os.getcwd()获取的是当前进程的工作目录,这个目录取决于你启动Python的方式(比如终端的当前路径、IDE的默认工作目录设置),而非脚本存放的位置。
  • 你调用os.path.dirname(Path().absolute())是取当前工作目录的父目录,若当前工作目录已是根目录Y:\,返回结果自然还是Y:\。

解决方法

如果你想获取当前脚本文件所在的目录(即你预期的Y:\Dev\),用以下代码:

方法1(Pathlib 推荐)

from pathlib import Path
# 获取当前脚本所在的目录
script_dir = Path(__file__).parent.absolute()
print(script_dir)  # 输出 Y:\Dev\

方法2(os模块)

import os
# 获取当前脚本所在的目录
script_dir = os.path.dirname(os.path.abspath(__file__))
print(script_dir)  # 输出 Y:\Dev\

额外验证步骤

若仍有问题,先确认当前进程的工作目录:

import os
from pathlib import Path
print("当前工作目录(os):", os.getcwd())
print("当前工作目录(pathlib):", Path.cwd())

如果输出是Y:\,说明你确实从根目录启动了Python进程,此时要么修改启动路径,要么用上述脚本目录方法获取目标路径。


内容的提问来源于stack exchange,提问作者Yohanes Lim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 20:27:09