Python导入为模块错误

时间:2015-03-24 13:33:12

标签: python module packages

我在使用Python创建软件包时遇到了相当新的问题,并且遇到了一个令我非常头疼的问题 - 因为我确信它很容易修复。

基本上,我创建了一个包含各种Tkinter小部件的包。此包中的模块应该能够单独导入或执行。但是,我无法想办法让两者都成为可能。

这是我的结构:

/My program  
    main.py  
    /lib  
         guiframe.py  
         /tkchartlib  
             __init__.py  
             chart.py  
             barchart.py  
             piechart.py

现在,piechart.py和barchart.py都包含以下导入:

from chart import Chart

但是,当我在guiframe.py中运行以下内容时:

from lib.tkchartlib.piechart import PieChart

这给了我这个错误:

"\lib\tkchartlib\piechart.py", line 5, in <module>  
    from chart import Chart  
ImportError: No module named 'chart'

任何想法如何使我的工作?

编辑:结果我试图在本地使用该模块;所以它没有按预期工作。无论如何都要在本地工作吗?

2 个答案:

答案 0 :(得分:0)

您当前的工作目录中缺少

__init__.py文件。

同时检查Chart文件中是否定义了chart.pyChart可以是类,变量等。

答案 1 :(得分:-1)

我有类似的问题,因为我忘了将我的包添加到PYTHONPATH。大多数IDE默认情况下会自行完成此操作,但不是例如Visual Studio。