首页 > 解决方案 > 从 repo 在项目中导入

问题描述

我想知道是否有比使用 sys.path.extension 扩展路径更顺畅的方式来处理从 repo 中提取的模块。

我们拉取一个项目,完成后需要每天保存它的文件结构。此外,我每次开始工作时都会拉动整个项目。

所需的路径扩展深度不同,我们只是使用很多代码行来描述模块的位置。

有没有更简单的方法来做到这一点?有没有办法概括这个路径扩展?

我们经常推送和拉取 repo,因为我们谈论的是一小部分脚本,所以我们总是将整个 master(项目)拉到本地工作。所以设置项目的路径扩展一次在本地运行并不能解决第二天的问题。

str_rel_par_folder = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))
sys.path.extend([os.path.join(str_rel_par_folder, r'some_file')])

如果有人知道这个问题并以某种方式处理它,那就太好了。也许你对如何以不同的方式使用 Github 来避免这些问题有一些建议。

标签: githubpathpython-import

解决方案


因此,我得出了以下如何有效处理此问题的见解:

  1. 最简单的方法是以一种不需要从比运行导入的脚本更高的级别进行导入的方式来构建项目。对于比我更深的技术知识的人来说,这可能是不言自明的。
  2. 如果没有办法以不同于从更高级别和更低级别的导入来构建项目,则可以始终将项目路径添加到 PATH/PYTHONPATH。不建议这样做,因为当您尝试在另一台机器上运行脚本时,它会导致问题和冲突。

推荐阅读