【问题标题】:Importing class from file in parent directory从父目录中的文件导入类
【发布时间】:2018-06-12 13:32:53
【问题描述】:

我的 python 代码结构如下:

src
--->commoncode.py
--->folder1
    --->file1.py
--->folder2
    --->file2.py
--->folder3
    --->file3.py

我想使用文件 fileN.py 中 commoncode.py 中的代码。我试过包括from . import commoncode,但这不起作用(ImportError: cannot import name 'commoncode')。

如果我在每个子文件夹中都包含一个符号链接,我可以将代码与 import commoncode 一起使用,但这看起来很老套,并且有点违背了拥有通用代码的目的。

commoncode.py 中现在唯一的代码是class commoncode():

如果有任何我可以进一步提供的有用信息,请告诉我。

【问题讨论】:

    标签: python class import


    【解决方案1】:

    由于你没有使用包,一种方法是修改你的路径:

    import sys
    sys.path.insert(0, "..")
    
    from commoncode import <whatever>
    
    # Now you can access imported symbols from commoncode.py
    

    【讨论】:

      【解决方案2】:

      通常在导入的时候需要如下导入,

      from(模块名称) import(模块中类的名称)。

      所以在你的情况下,如果我理解正确,我相信它会是:

      from(通用代码模块名称)import commoncode.

      在您希望在其中使用公共代码的任何模块的顶部,这就是它的导入方式。

      请确保您没有遗漏任何大写或小写字母,因为导入时区分大小写。希望这能有所帮助。

      【讨论】:

        猜你喜欢
        • 2013-05-22
        • 2021-08-24
        • 2018-10-09
        • 2018-12-06
        • 1970-01-01
        • 1970-01-01
        • 2021-10-23
        • 1970-01-01
        • 2019-06-04
        相关资源
        最近更新 更多