What Are Modules and Packages in Python?

Download as odt, pdf, or txt
Download as odt, pdf, or txt
You are on page 1of 1

 What are modules and packages in Python?

Python packages and Python modules are two mechanisms that allow for modular
programming in Python. Modularizing ahs several advantages -
• Simplicity: Working on a single module helps you focus on a relatively small portion of the
problem at hand. This makes development easier and less error-prone.
• Maintainability: Modules are designed to enforce logical boundaries between different
problem domains. If they are written in a manner that reduces interdependency, it is less likely
that modifications in a module might impact other parts of the program.
• Reusability: Functions defined in a module can be easily reused by other parts of the
application.
• Scoping: Modules typically define a separate namespace, which helps avoid confusion
between identifiers from other parts of the program.
Modules, in general, are simply Python files with a .py extension and can have a set of
functions, classes or variables defined and implemented. They can be imported and initialized
once using the import statement. If partial functionality is needed, import the requisite classes
or functions using from foo import bar.
Packages allow for hierarchial structuring of the module namespace using dot notation.
As, modules help avoid clashes between global variable names, in a similary
manner, packages help avoid clashes between module names.
Creating a package is easy since it makes use of the system's inherent file structure. So just
stuff the modules into a folder and there you have it, the folder name as the package name.
Importing a module or its contents from this package requires the package name as prefix to
the module name joined by a dot.
Note:  You can technically import the package as well, but alas, it doesn't import the modules within
the package to the local namespace, thus, it is practically useless.

You might also like