Bird
0
0

You want to create a package shapes with subpackage polygons. You want importing shapes to automatically import polygons as well. How should you modify shapes/__init__.py to achieve this?

hard📝 Application Q15 of 15
Python - Modules and Code Organization
You want to create a package shapes with subpackage polygons. You want importing shapes to automatically import polygons as well. How should you modify shapes/__init__.py to achieve this?
AAdd <code>import shapes.polygons</code> inside <code>shapes/__init__.py</code>
BAdd <code>import polygons</code> inside <code>shapes/__init__.py</code>
CAdd <code>from . import polygons</code> inside <code>shapes/__init__.py</code>
DLeave <code>shapes/__init__.py</code> empty; Python imports subpackages automatically
Step-by-Step Solution
Solution:
  1. Step 1: Understand relative imports in packages

    To import a subpackage inside a package's __init__.py, use relative import syntax like from . import polygons.
  2. Step 2: Avoid absolute import inside the package

    Using import polygons or import shapes.polygons may cause errors or circular imports; relative import is preferred.
  3. Step 3: Confirm that empty __init__.py does not import subpackages

    Python does not import subpackages automatically; explicit import is needed.
  4. Final Answer:

    Add from . import polygons inside shapes/__init__.py -> Option C
  5. Quick Check:

    Use relative import from . import polygons = A [OK]
Quick Trick: Use relative import from . import subpackage in __init__.py [OK]
Common Mistakes:
  • Using absolute import inside __init__.py
  • Expecting automatic subpackage import
  • Forgetting to add __init__.py in subpackage

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More Python Quizzes