The os.path module in Python is used to work with file and directory paths. It helps you safely check, build, and manage file paths in a way that works across different operating systems like Windows, Linux, and macOS.
Instead of manually handling file paths, Python provides built-in methods that make path operations simple and reliable.
In this tutorial, you will learn important os.path methods with clear examples.
Importing OS Path Module
Before using path methods, import the os module.
import os1. os.path.exists()
Checks whether a file or directory exists.
Example:
import os
print(os.path.exists("file.txt"))Output:
True or False2. os.path.isfile()
Checks if the path is a file.
Example:
import os
print(os.path.isfile("file.txt"))3. os.path.isdir()
Checks if the path is a directory.
Example:
import os
print(os.path.isdir("MyFolder"))4. os.path.abspath()
Returns the absolute (full) path.
Example:
import os
print(os.path.abspath("file.txt"))Output:
C:\Users\Name\Project\file.txt5. os.path.basename()
Returns only the file name from a path.
Example:
import os
path = "C:/Users/Name/file.txt"
print(os.path.basename(path))Output:
file.txt6. os.path.dirname()
Returns the directory part of a path.
Example:
import os
path = "C:/Users/Name/file.txt"
print(os.path.dirname(path))Output:
C:/Users/Name7. os.path.join()
Joins path components safely.
Example:
import os
path = os.path.join("Folder", "file.txt")
print(path)Output:
Folder/file.txt8. os.path.split()
Splits path into (directory, file).
Example:
import os
path = "C:/Users/Name/file.txt"
print(os.path.split(path))Output:
('C:/Users/Name', 'file.txt')9. os.path.splitext()
Splits file name and extension.
Example:
import os
file = "data.txt"
print(os.path.splitext(file))Output:
('data', '.txt')10. os.path.getsize()
Returns file size in bytes.
Example:
import os
print(os.path.getsize("file.txt"))11. os.path.getmtime()
Returns last modification time.
Example:
import os
print(os.path.getmtime("file.txt"))12. os.path.getctime()
Returns file creation time.
Example:
import os
print(os.path.getctime("file.txt"))Real-World Example: File Checker Tool
import os
file = "data.txt"
if os.path.exists(file):
print("File exists")
print("Size:", os.path.getsize(file), "bytes")
else:
print("File not found")Real-World Example: Path Builder System
import os
folder = "Project"
file = "report.txt"
full_path = os.path.join(folder, file)
print(full_path)OS Path Methods Summary
| Method | Description |
|---|---|
| exists() | Check file/folder exists |
| isfile() | Check if file |
| isdir() | Check if folder |
| abspath() | Get full path |
| basename() | Get file name |
| dirname() | Get folder path |
| join() | Combine paths |
| split() | Split path into parts |
| splitext() | Split file & extension |
| getsize() | File size |
| getmtime() | Last modified time |
| getctime() | Creation time |
Common Mistakes
Mistake 1: Using wrong path format
❌ Wrong:
"C:\newfolder\file.txt"✔ Use raw string:
r"C:\newfolder\file.txt"Mistake 2: Not checking file existence
os.path.getsize("file.txt")✔ Can cause error if file doesn't exist
Mistake 3: Hardcoding paths
✔ Always use os.path.join()
Safe Path Handling Example
import os
file = "data.txt"
if os.path.exists(file):
print("File size:", os.path.getsize(file))
else:
print("File not found")Conclusion
Python os.path module is essential for working with file paths in a safe and cross-platform way.
You learned:
- How to check files and folders
- How to build and split paths
- How to get file information
- Real-world automation examples
Mastering os.path helps you build reliable applications, file managers, and automation tools.


0 Comments