DEV Community

Lakshmi Pritha Nadesan
Lakshmi Pritha Nadesan

Posted on

Day 8 - Modules

Modules:

In Python, a module is a file containing Python definitions and statements. Modules allow you to organize your code into reusable pieces and help with maintaining and structuring your programs.

A module is essentially a Python file (.py)

Python provides built-in modules (like math, os, etc.).

You can create your own custom modules.

Modules have special variables:

__name__: The name of the module.
__file__: The file path of the module.
__doc__ : The documentation string of a module.
Enter fullscreen mode Exit fullscreen mode

In Python, identifiers starting and ending with double underscores (like name, doc, etc.) are called "dunder" (double underscore) methods or attributes.

print("Hello")
print(__name__) 
Enter fullscreen mode Exit fullscreen mode

If the script is run directly,the value of name will be set to "main".

Hello
__main__
Enter fullscreen mode Exit fullscreen mode
print("Hello")
print(__file__)
Enter fullscreen mode Exit fullscreen mode

If the script is saved as one.py and you run it directly with python one.py, the output will look something like this:

Hello
/home/prigo/Desktop/one.py
Enter fullscreen mode Exit fullscreen mode
''' User module documentation string'''
print(__doc__)
Enter fullscreen mode Exit fullscreen mode

When the module is executed, the doc attribute will contain the documentation string defined at the top of the file (''' User module documentation string''').

User module documentation string
Enter fullscreen mode Exit fullscreen mode
#calculator.py

def add(no1,no2):
    print(no1+no2)

def subtract(no1,no2):
    print(no1-no2)

def multiply(no1,no2):
    print(no1*no2)

def divide(no1,no2):
    print(no1/no2)
Enter fullscreen mode Exit fullscreen mode

A simple Python module that defines basic arithmetic operations like addition, subtraction, multiplication, and division.

The import statement in Python is used to bring code from one module (a Python file) into another.

#user.py
import calculator

calculator.add(100,123)
calculator.multiply(10,3)
Enter fullscreen mode Exit fullscreen mode

This will call the add function from your calculator module, which adds 100 and 123.
This will call the multiply function, which multiplies 10 and 3.

223
30
Enter fullscreen mode Exit fullscreen mode

This imports only the add and multiply functions from the calculator module, and you can use them directly without the module prefix.

#user.py
from calculator import add, divide

add(100,200)
divide(200,40)
Enter fullscreen mode Exit fullscreen mode
300
5.0
Enter fullscreen mode Exit fullscreen mode

help()

In Python, the help() function is a built-in function used to display documentation about Python objects, modules, functions, classes, or methods.

import math
help(math)

Enter fullscreen mode Exit fullscreen mode

This will display detailed information about the math module, including its functions like floor(), ceil(), etc.

help('modules')
Enter fullscreen mode Exit fullscreen mode

This will displays the list of modules available in python.

Image of Timescale

Timescale – the developer's data platform for modern apps, built on PostgreSQL

Timescale Cloud is PostgreSQL optimized for speed, scale, and performance. Over 3 million IoT, AI, crypto, and dev tool apps are powered by Timescale. Try it free today! No credit card required.

Try free

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Dive into an ocean of knowledge with this thought-provoking post, revered deeply within the supportive DEV Community. Developers of all levels are welcome to join and enhance our collective intelligence.

Saying a simple "thank you" can brighten someone's day. Share your gratitude in the comments below!

On DEV, sharing ideas eases our path and fortifies our community connections. Found this helpful? Sending a quick thanks to the author can be profoundly valued.

Okay