بيثون حزم - استيراد من الدرجة وليس الملف
سؤال
أقول لقد الملف التالي هيكل:
app/
app.py
controllers/
__init__.py
project.py
plugin.py
إذا app/controllers/project.py يحدد فئة المشروع ، app.py أن استيراد مثل هذا:
from app.controllers.project import Project
أود أن تكون قادرة على القيام:
from app.controllers import Project
كيف يتم ذلك ؟
المحلول
تحتاج إلى وضع
from project import Project
في controllers/__init__.py
.
لاحظ أنه عندما المطلق الواردات تصبح الافتراضي (بايثون 2.7?), سوف تحتاج إلى إضافة نقطة قبل اسم الوحدة النمطية (لتجنب التصادم مع مستوى أعلى نموذج اسمه project
) ، أي
from .project import Project
لا تنتمي إلى StackOverflow