How To Create Config File In Python

Using configuration files is a common practice in the development of software applications. Config files provide a convenient way to manage settings and variables that help customize the behavior of your Python applications without having to change the source code directly.

In this tutorial, you will learn how to create and use a configuration file in Python using the ConfigParser module. This module provides a way to write data to, and read data from, data storage files that are commonly used for configuration.

Step 1: Install configparser

If you’re using Python 3, the configparser module is included in the standard library. However, if you’re using Python 2, you’ll need to install the ConfigParser package using the following command:

Step 2: Create a configuration file

A configuration file is a simple text file that consists of sections, each section containing key-value pairs of the variables you want to define. Let’s create a sample configuration file named config.ini with the following content:

In this configuration file, we have two sections: settings and paths. Inside each section, we have different variables (api_key, timeout, input, and output) with their corresponding values.

Step 3: Read the configuration file using configparser

Now, let’s read the config.ini file using the configparser module in your Python script. First, you need to import the module and create a ConfigParser object:

Next, use the read method to load the configuration file:

Step 4: Access the values of the variables from the configuration file

To access the values of the variables from the configuration file, we can use the get method along with the section and variable name as follows:

Full Code

Here is the full Python code:


The output of the code should be:

API Key: abc123
Input Path: /data/input


In this tutorial, you learned how to create and use a configuration file in Python using the configparser module. By using config files, you can easily modify the behavior and settings of your application without directly changing the source code. This can help simplify maintenance and improve the reusability of your code for future projects.