在 PyDev 项目中包含多个模块
Include multiple modules on PyDev project
所以,我想在我当前的 Python 项目中输入以前创建的 类。
为此,我创建了一个名为 lib
的文件夹,并在其中创建了一个 __init__.py
文件。
我的文件结构如下所示
project_folder
lib
class1_folder
class1.py
class2_folder
class2.py
_init_.py
project_script.py
在位于主项目文件夹的__init__.py
文件中,我有两行代码。
from class1_folder import class1
from class2_folder import class2
我希望能够使用我在 project_script.py
中实现的 类。如果它们嵌套得这么深,我怎么能调用它们呢?
在 project_script 中,我执行以下操作 from lib.class1_folder.class1 import *
但是我得到一个 ImportError: No module named class1_folder
您尝试做的是导入文件 class1.py,通过说导入 class1,您实际需要做的是从文件 class 中导入 class =18=](我可以建议重命名您的文件;它们会让事情变得有点混乱:))。所以,比方说,你的 classes 被命名为 Dog 和 Cat(只是为了使用完全不同的东西,以避免混淆),你需要使用:
from class1 import Dog
from class2 import Cat
不过请记住,以上方法仅在所有文件都位于同一目录中时才有效,因此我建议将它们全部保存在同一目录中。
还有一件事,如果这仍然令人困惑,当我写 "from class1 import Dog" 时,class1 代表 class1.py,它只是没有文件扩展在最后。它不代表 class.
的实际名称
您需要将 __init__.py
文件添加到每个应被视为包的文件夹中(例如,它们应添加到 class1_folder
和 class2_folder
)。
所以,我想在我当前的 Python 项目中输入以前创建的 类。
为此,我创建了一个名为 lib
的文件夹,并在其中创建了一个 __init__.py
文件。
我的文件结构如下所示
project_folder
lib
class1_folder
class1.py
class2_folder
class2.py
_init_.py
project_script.py
在位于主项目文件夹的__init__.py
文件中,我有两行代码。
from class1_folder import class1
from class2_folder import class2
我希望能够使用我在 project_script.py
中实现的 类。如果它们嵌套得这么深,我怎么能调用它们呢?
在 project_script 中,我执行以下操作 from lib.class1_folder.class1 import *
但是我得到一个 ImportError: No module named class1_folder
您尝试做的是导入文件 class1.py,通过说导入 class1,您实际需要做的是从文件 class 中导入 class =18=](我可以建议重命名您的文件;它们会让事情变得有点混乱:))。所以,比方说,你的 classes 被命名为 Dog 和 Cat(只是为了使用完全不同的东西,以避免混淆),你需要使用:
from class1 import Dog
from class2 import Cat
不过请记住,以上方法仅在所有文件都位于同一目录中时才有效,因此我建议将它们全部保存在同一目录中。
还有一件事,如果这仍然令人困惑,当我写 "from class1 import Dog" 时,class1 代表 class1.py,它只是没有文件扩展在最后。它不代表 class.
的实际名称您需要将 __init__.py
文件添加到每个应被视为包的文件夹中(例如,它们应添加到 class1_folder
和 class2_folder
)。