If you are working with Python, you will quickly encounter the concept of modules. These allow you to structure your code and create reusable functions. It not only benefits organization but also improves the efficiency of your programming. In this tutorial, you will learn how to create and import modules in Python. We will look at how to work with your own file to provide different mathematical functions and then use them in another Python script.
Key Insights
- Modules are simply Python files containing different functions.
- Importing modules allows for better structuring of your code.
- You can import modules under various names or only import specific functions.
- Using aliases and selective imports helps avoid naming conflicts.
Step-by-step Guide
Creating a Module
To create a module in Python, you first need a file with the appropriate functions. In our example, we will create a file named arithmetik.py, which contains some basic mathematical functions such as addition, subtraction, and multiplication. You can create the file in any text editor.

In arithmetik.py, you will define the individual functions:
def subtract(a, b): return a - b
def multiply(a, b): return a * b
Here we have three simple functions that you will later use in your main script.
Importing a Module
Now that you have created your module arithmetik.py, you can use it in another script. Create a second file named rechner.py, which is located in the same directory as your module.

In rechner.py, you import the module with the following command:
Now you can access the functions of your module. Define some variables to demonstrate:
Now you can, for example, call the addition function and print the result:
This line will print the result of adding a and b. If you run the script now, you will see that the output is "17".
Using Aliases
If you want to import the module under a shorter name, that is also possible. Here's how:
Now you can call the functions with the alias ar, which makes your code a bit shorter:
Despite the different name, everything works as usual. It's just a matter of preference.

Selective Importing of Functions
Sometimes you don't need all functions from a module. You can choose which functions you want to import. Use the following syntax:
Now the function add is directly available without having to specify the module name.
So when you call add(a, b), the autocomplete will offer it directly without including other functions.
Resolving Naming Conflicts
Another benefit of using aliases and selective imports is the ability to avoid naming conflicts. If you have a module that has the same name as an external library, you can still use the functions.
If your module arithmetik.py has the same name as the mathematical module math.py, you would encounter a conflict. However, you can work around this with aliasing or selective importing.

Conclusion on Modules and Imports
As you have seen by now, modules are a central part of Python programming. They help you make your code modular and reusable. Importing and the various import methods give you flexibility and control over access to functions in your scripts.
Summary – Basics of Using and Importing Python Modules
In this tutorial, you have learned how to create, import, and use simple Python modules. The importance of structuring your code is made clear through modules and the various import options. This way, you can make your programming significantly more effective.
Frequently Asked Questions
What is a module in Python?A module is a Python file that defines functions, classes, and variables that can be used in other Python scripts.
How do I import a module?You can import a file by using the command import modulename.
What is the difference between import module and from module import function?The first command imports the entire module, while the second command only imports the specific function.
How can I avoid naming conflicts?You can use aliases or selectively import functions to avoid conflicts with other modules.