The `os` module provides a way to interact with the operating system. It allows us to perform various operations related to file and directory management, process management, environment variables, and more. Here are a few practical examples of how you can use the `os` module: **1. Working with Files and Directories:** The `os` module provides functions to work with files and directories, such as creating, renaming, deleting, and navigating through them. Get the current working directory
import os current_dir = os.getcwd() print(current_dir)
/Users/yogesh/projects/pyfiddle/web/home
Create a new directory
os.mkdir("new_directory")Let's also create a file so we can work with it later.
open("new.txt", "w").close()List all files and directories in the current directory
os.listdir()
['new_directory', 'example.txt', 'new.txt']
Rename a file or directory
os.rename("new_directory", "renamed_directory")
os.listdir()['renamed_directory', 'example.txt', 'new.txt']
Delete a file or directory
os.remove("new.txt")
os.rmdir("renamed_directory")
os.listdir()['example.txt']
**2. Environment Variables:** The `os` module provides functions to access and modify environment variables. Get the value of an environment variable
import os
home_dir = os.getenv("HOME")
print(home_dir)/Users/yogesh
Set the value of an environment variable
import os os.environ["MY_VARIABLE"] = "my_value" print(os.environ["MY_VARIABLE"])
my_value
In this code, we use `os.getenv()` to get the value of the `HOME` environment variable, which stores the path to the user's home directory. We also use `os.environ` to set the value of a custom environment variable called `MY_VARIABLE`.
**3. Running System Commands:**
The `os` module allows us to run system commands using the `os.system()` function.
```python [main.nopy]
import os
# Run a system command to list all files and directories
os.system("ls -l")
```
In this code, we use the `os.system()` function to run the system command `ls -l`, which lists the files and directories in the current directory.
We learned how to list and manipulate files or directories with the `os` module. For advanced use cases such as searching for files based on a pattern, read about the [glob module](/tutorials/glob).