代码之家  ›  专栏  ›  技术社区  ›  MintyAnt

Pydev+Kivy-清空__init__文件

  •  0
  • MintyAnt  · 技术社区  · 11 年前

    我正在使用Eclipse和PyDev为名为Kivy的Python库进行开发。

    我浏览了正确的设置说明,从Eclipse进行开发和运行非常完美。

    然而,当我或我的项目伙伴namley试图运行包含eclipse的主方法OUTSIDE的文件(通过kivy cmd提示符)时,会出现以下错误:

       File "C:\MyProject\code\main.py", line 8, in <module>
         from code import engine
     ImportError: cannot import name engine
    

    文件代码基本上是:

    from kivy.app import App
    from kivy.clock import Clock
    from kivy.uix.screenmanager import ScreenManager
    from code import engine
    
    class MyApp(App):
        def build(self):
            pass
    
    if __name__ == '__main__':
        MyApp.run()
    

    我查看了我的项目文件。我有一堆 初始化 .py文件

    code/
        __init__.py
        main.py
        engine.py
        system1/
            __init__.py
            my_system.py
    etc...
    

    但是所有的 初始化 .py文件为空! 我应该手动构建它们吗? Eclipse一定在某个时候完成了,我能让PyDev自动完成吗?

    1 回复  |  直到 11 年前
        1
  •  1
  •   jsbueno    11 年前

    空的 __init__.py Python(3.2版之前)需要文件,将目录定义为Python包,并将其内容定义为模块/子包。

    如果您没有创建它们,PyDev会为您创建它们,而且它们不需要包含任何内容。

    如果你的伙伴不能导入 code.engine 根据推测,它很可能是包含 code 它本身不是Python路径(PYTHONPATH环境变量)的一部分,因此它无法从哪里找到代码包。