Skip to main content

The os.makedirs(directory_path) function in Python can be used with both absolute and relative paths. Whether you should use an absolute or relative path depends on your specific use case and the location where you want to create the directory:


Absolute Path

Use an absolute path when you want to specify the exact location in the file system, starting from the root directory (e.g., /path/to/new/directory).

It ensures that the directory is created at the specified location, regardless of the current working directory.  Absolute paths are useful for creating directories in specific system-wide locations, but they may require appropriate permissions.


Relative Path

Use a relative path when you want to specify the location of the directory relative to the current working directory.  It's often more convenient when working within a project or script that has a well-defined directory structure.  Relative paths are less error-prone if you plan to distribute your code or run it in different environments with varying directory structures.  For example, if your Python script is located in the directory /home/user/scripts, and you want to create a directory within that directory, you can use a relative path like this:

import os
directory_path = "directory"

If you want to create a directory at an absolute path, specify the full path as follows:

import os
directory_path = "/path/to/new/directory"

Your choice of absolute or relative paths depends on your project's requirements and the location where you want to create the directory.  Both approaches are valid, and you should use the one that best fits your needs.

Related articles

Andrew Fletcher06 May 2024
Exploring historical memory usage monitoring with Sysstat
In the realm of system administration and monitoring, understanding memory usage trends is crucial for maintaining system health and performance. While tools like htop offer real-time insights into memory usage, they lack the capability to provide historical data. So, what if you need to analyze...