从不同的文件夹python导入模块以获取未知路径

时间:2017-07-11 11:58:26

标签: python

我一直在研究python项目,我是新手。 我为我的项目创建了一个小型库,我在其中有几个不同的模块执行不同的任务。

例如:我有5个模块,即加,减,乘,除和根。 我将所有这些.pyc文件调用到我的main.py文件中,如果所有这些文件都位于同一文件夹,我的代码将正常运行

现在,我想将main.py存储在:D:\project\main.py 这些5 .pyc个文件位于:D:\project\Lib\(在Lib文件夹中)

我找到了一个解决方案,提到文件夹Lib的路径代码,但我不能这样做,因为我需要在某处提交代码,如果他们试图在他们的PC上运行它,它可能不会导入这些文件

这可能是什么解决方案?

2 个答案:

答案 0 :(得分:2)

尝试创建包。

使用如下目录结构:

.
+-- main.py
+-- lib
    +-- __init__.py
    +-- add.pyc
    +-- substract.pyc
    +-- ...

然后,在您的main.py文件中,您可以像这样导入它们:

from lib import add

More on packages on Python docs

答案 1 :(得分:1)

D:\project\Lib内创建一个__init__.py文件。并将所有模块放在D:\project\Lib现在lib作为python包。你的dir结构现在应该是这样的:

D:\project\Lib
           |
           +--- __init__.py
           +--- add.py
           +--- sub.py
           +--- multiply.py

现在从里面的任何文件(例如ex main.py)D:\project调用你想要的任何模块。

from Lib.add import something

最终目录结构将大致如此。

D:\project
        |
        +-- main.py
        +-- Lib
              |
              +--- __init__.py
              +--- add.py
              +--- sub.py
              +--- multiply.py