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

Git仓库内Python跨目录导入的合规实现方案咨询

Python跨目录导入的需求与疑问

我希望创建一个可按以下方式使用的Git仓库:

git clone $PROJECT_URL my_project
cd my_project
python some_dir/some_script.py

同时需要让some_dir/some_script.py能够导入another_dir/some_module.py中的内容,请问该如何实现这一需求?

我的期望要求按重要性从高到低排列:

  • 不得在任何.py文件中修改sys.path,这会导致IDE自动重构时出现稳定性问题。
  • 不得更改目录结构,该仓库的结构是经过精心设计的。
  • 不得修改环境,例如不想向$PYTHONPATH中添加硬编码路径,避免切换到其他目录执行无关Python命令时出现意外行为。
  • 尽量少修改上述3条命令的执行流程,不想要复杂的工作流,希望能对some_dir/some_script.py使用自动补全,且不想额外输入Python命令行参数。

我了解有四种通用解决方案,但都无法满足上述所有要求。

如果不存在符合所有要求的可行方案,想了解背后的原因?这似乎是很自然的需求,列出的要求也合理。我知道Guido在2007年的一封邮件中表达过相关观点:

我反对这个以及任何对__main__机制的修改提议。唯一的用例似乎是运行恰好位于模块目录内的脚本,我一直认为这是一种反模式。除非能说服我并非如此,否则我不会改变主意。

但不确定此后情况是否有变化。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 01:10:27