如何从不同目录、同一级别、不同文件夹导入 python 模块

How to import python module from different directory, same level, but different folder

我的目录结构类似于

Documents/
    Project_1/
        module_1.py
    Project_2/
        module_2.py

如果我想将 module_1.py 导入 module_2.py,它的语法是什么?

我试过

的变体
import ../Project_1/module_1

from .Project_1 import module_1

但我无法让它工作并且之前在另一个项目中只做过一次。

你有两个选择;

from Documents.project_1 import module1.py

import Documents.project_1.module1.py

这是一个粗略的解决方案,但我最终得到了这样的结果:

#This thing modifies the path
from sys import path

#This gets our user directory
from os import environ

#add module_1's location to path
path.append(environ['USERPROFILE'] + "\Documents\Project_1")

#import it now
import module_1

这不是最优雅的解决方案,但它几乎可以在任何 Windows 机器上运行,前提是文件夹放在它们的文档中。

不过,可以合理地替换有关 Environ 的代码以匹配另一个目录。