我的程序不认识beetwen modules&核心我在python2上

时间:2017-01-09 21:20:02

标签: python django import module

我有一个python程序,我收到以下错误:

  

ImportError:没有名为core

的模块

导致错误的导入是:

from core import wcolors

文件wcolors.py位于名为core的目录内,还有另一个名为modules的目录,所以当我运行我的程序时,它会输出错误:

Traceback (most recent call last):
File "anubis.py", line 7, in <module>
from core import wcolors
ImportError: No module named core

目录结构

dir结构就像那样

anubis
--anubis.py    (the script that i run)
--core
  --wcolors.py (the file i import from core)

-- modules
   [the modules i suposed to load during the execution.]

作为另一个细节,核心中的所有文件都是使用.pyc扩展编译的。

2 个答案:

答案 0 :(得分:1)

您只需要在__init__.pyanubis目录中添加空白anubis/core,这应该可行。如果您没有__init__.py文件,python将不会认为该目录是模块。

  

需要__init__.py个文件才能使Python将目录视为包含包;这样做是为了防止具有通用名称的目录(例如字符串)无意中隐藏稍后在模块搜索路径上发生的有效模块。在最简单的情况下,__init__.py可以只是一个空文件

Python docs

答案 1 :(得分:0)

你可以试试这个:

from anubis.core import wcolors

或者您可以更改&#34; core&#34;的名称,它可以是django和python的关键字。