从另一个目录导入python模块(不在站点包中!)

从另一个目录导入python模块(不在站点包中!),python,python-3.x,import,pycharm,python-import,Python,Python 3.x,Import,Pycharm,Python Import,举个例子,我的python文件的结构如下: C:\ folder1\ file1.py folder2\ file2.py 让我们假设模块file1中有一个名为Class1的类(如果愿意,还有一个空的\uuuu init\uuuu.py文件)。如何在file2中导入Class1?当尝试从folder1导入时,我总是得到一个“ImportError:没有名为folder1的模块”像“sys.path.insert(0,../folder1')”这样的东西对我不起作用 我是

举个例子,我的python文件的结构如下:

C:\
  folder1\
    file1.py
  folder2\
    file2.py
让我们假设模块
file1
中有一个名为
Class1
的类(如果愿意,还有一个空的
\uuuu init\uuuu.py
文件)。如何在
file2
中导入
Class1
?当尝试从
folder1
导入时,我总是得到一个“
ImportError:没有名为folder1的模块”像“
sys.path.insert(0,../folder1')
”这样的东西对我不起作用


我是否必须将“C:\”添加到系统环境变量“PATH”(请注意,我不是在site packages文件夹中工作)

您需要在这两个文件夹中都有
\uu init\uuuupy

然后,您可以使用
sys
模块动态附加到python路径

sys.append.path(../folder1)

从文件1导入类1
现在可以工作了。(在Linux上测试)


但您仍然无法从folder1.file1 import Class1执行类似的

可能重复的操作,因为我使用的是两个不同的目录。“from folder1.file1 import Class1”总是给我一个ImportError。可能需要将PYTHONPATH设置为“C:\folder2”。别忘了将
\uuuu init\uuuu.py
添加到folder2I我的系统环境变量中没有PYTHONPATH。我是否应该简单地添加C:\folder1作为唯一内容的变量?