Python Tutorial for os Module: Working with Directories in Python

Introduction

The `os` module in Python provides a way of using operating system dependent functionality like reading or writing to the file system. One of the most common tasks when working with files and directories is navigating through directory structures, creating new directories, and deleting existing ones. In this tutorial, we will focus on how to work with directories in Python using the `os` module.

How to import the os module

The os module in Python provides a way of using operating system dependent functionality. It allows us to interact with the file system and perform various operations on it such as creating, deleting, renaming directories, listing files in a directory etc.

To use the os module in Python, we first need to import it. We can simply import it using the `import` keyword followed by the module name “os”. Here’s an example:


import os

Once we have imported the os module, we can start using its various functions and methods to work with directories and files.

It’s important to note that some of the functions in the os module are platform-dependent, meaning they may behave differently depending on which operating system you’re running your Python code on. So, make sure to refer to the official documentation for any platform-specific behaviors or limitations.

Next, let’s dive into how to work with directories specifically.

Working with Directories using the os module

Directories are an essential part of any file system, and Python provides the os module to work with directories. In this tutorial, we will cover some of the most common operations you can perform on directories using the os module.

Checking if a directory exists

Before performing any operation on a directory, it is always a good practice to check if the directory exists or not. You can use the os.path.exists() function to check if a directory exists or not.


import os

if os.path.exists('/path/to/directory'):
    print('Directory exists')
else:
    print('Directory does not exist')

Creating a directory

You can create a new directory using the os.mkdir() function. This function takes the path of the directory as its argument and creates a new directory at that path.


import os

os.mkdir('/path/to/new/directory')

Renaming or moving a directory

To rename or move a directory, you can use the os.rename() function. This function takes two arguments: the old path of the directory and the new path of the directory.


import os

os.rename('/path/to/old/directory', '/path/to/new/directory')

Changing the current working directory

You can change the current working directory using the os.chdir() function. This function takes the path of the directory that you want to set as the current working directory.


import os

os.chdir('/path/to/new/directory')

Getting the current working directory

To get the current working directory, you can use the os.getcwd() function. This function returns the path of the current working directory as a string.


import os

cwd = os.getcwd()
print(cwd)

List all files and directories in a directory

You can list all files and directories in a directory using the os.listdir() function. This function takes the path of the directory as its argument and returns a list of all files and directories in that directory.


import os

files_and_directories = os.listdir('/path/to/directory')
print(files_and_directories)

List only directories in a directory

To list only directories in a directory, you can use a combination of os.listdir() and os.path.isdir() functions. The os.path.isdir() function takes a path as its argument and returns True if that path is a directory.


import os

directories = [d for d in os.listdir('/path/to/directory') if os.path.isdir(os.path.join('/path/to/directory', d))]
print(directories)

List only files in a directory

Similarly, to list only files in a directory, you can use a combination of os.listdir() and os.path.isfile() functions. The os.path.isfile() function takes a path as its argument and returns True if that path is a file.


import os

files = [f for f in os.listdir('/path/to/directory') if os.path.isfile(os.path.join('/path/to/directory', f))]
print(files)

Deleting a Directory

To delete a directory in Python, we can use the `os.rmdir()` method. This method takes a single argument which is the name of the directory that we want to delete. Here’s an example:


import os

# Deleting 'new_directory'
os.rmdir('new_directory')

This will delete the `new_directory` that we created earlier.

These are some of the most common operations you can perform on directories using the os module in Python.

Conclusion

In conclusion, the `os` module is a powerful tool for working with directories in Python. It provides a wide range of functions to create, delete, rename, and navigate directories in your file system.

In this tutorial, we have covered the basics of the `os` module and explored some of its most commonly used functions. We have learned how to create a new directory using the `mkdir()` function, how to remove a directory using the `rmdir()` function, and how to list all files and directories in a given directory using the `listdir()` function.

We have also seen how to navigate directories using the `chdir()` function and how to get information about a file or directory using the `stat()` function. Additionally, we have discussed some advanced techniques such as walking through an entire directory tree using the `walk()` function and joining path names using the `join()` function.

Overall, mastering the `os` module is essential for any serious Python programmer who needs to work with directories and files on their computer. With its vast array of functions and capabilities, it provides a powerful set of tools for managing your file system within your Python programs.
Interested in learning more? Check out our Introduction to Python course!


How to Become a Data Scientist PDF

Your FREE Guide to Become a Data Scientist

Discover the path to becoming a data scientist with our comprehensive FREE guide! Unlock your potential in this in-demand field and access valuable resources to kickstart your journey.

Don’t wait, download now and transform your career!


Pierian Training
Pierian Training
Pierian Training is a leading provider of high-quality technology training, with a focus on data science and cloud computing. Pierian Training offers live instructor-led training, self-paced online video courses, and private group and cohort training programs to support enterprises looking to upskill their employees.

You May Also Like

Deep Learning, Tutorials

ChatGPT API Python Guide

Introduction Welcome to this tutorial on using the ChatGPT API from OpenAI with Python! ChatGPT is a state-of-the-art language model that can generate human-like responses to text-based inputs. With its ability to understand context and generate coherent responses, ChatGPT has become a popular tool for chatbots and conversational agents in a variety of industries. In […]

Python Basics, Tutorials

Using Min Function in Python

Introduction Python is a powerful programming language that can be used for a variety of tasks, including data analysis and manipulation. One common task in data analysis is finding the smallest number in a list, which one can do in a variety of ways, including using the Python min function. In this tutorial, we will […]

Python Basics, Tutorials

Understanding the Max Python Function

Introduction Lists are an important data structure in Python programming. They allow us to store a collection of values in a single variable. Sometimes we need to find the maximum value in a list, in this blog post we’ll cover how to use the max python function. This can be useful in many situations, for […]