从另一个目录导入 python 模块(不在站点包中!)
Import python module from another directory (NOT in site-packages!)
举个例子,我的 python 文件的结构如下:
C:\
folder1\
file1.py
folder2\
file2.py
让我们假设在模块 file1
中有一个名为 Class1
的 class(如果您愿意,还有一个空的 __init__.py
文件)。如何在 file2
中导入 Class1
?尝试从 folder1
导入时,我总是得到“ImportError: No module named folder1
”; “sys.path.insert(0, '../folder1')
”之类的东西对我不起作用。
我是否必须将 "C:\" 添加到系统环境变量 "PATH" 中(注意我 不是 在 site-packages 文件夹中工作)?
您需要在两个文件夹中都有 __init__.py
。
然后可以使用sys
模块动态追加到python路径
sys.append.path(../folder1)
from file1 import Class1
现在可以使用了。 (在 Linux 上测试)
但是你还是做不到from folder1.file1 import Class1
举个例子,我的 python 文件的结构如下:
C:\
folder1\
file1.py
folder2\
file2.py
让我们假设在模块 file1
中有一个名为 Class1
的 class(如果您愿意,还有一个空的 __init__.py
文件)。如何在 file2
中导入 Class1
?尝试从 folder1
导入时,我总是得到“ImportError: No module named folder1
”; “sys.path.insert(0, '../folder1')
”之类的东西对我不起作用。
我是否必须将 "C:\" 添加到系统环境变量 "PATH" 中(注意我 不是 在 site-packages 文件夹中工作)?
您需要在两个文件夹中都有 __init__.py
。
然后可以使用sys
模块动态追加到python路径
sys.append.path(../folder1)
from file1 import Class1
现在可以使用了。 (在 Linux 上测试)
但是你还是做不到from folder1.file1 import Class1