Thông báo: Download 4 khóa học Python từ cơ bản đến nâng cao tại đây.
Cách kiểm tra file hoặc thư mục có tồn tại trong Python
Khi bạn muốn mở một file, nếu file hoặc thư mục được chỉ định trong đường dẫn không tồn tại, Python sẽ gây ra một ngoại lệ. Việc xử lý tình huống này là rất quan trọng để tránh chương trình bị lỗi đột ngột. Bài viết này giới thiệu các cách kiểm tra xem một file hoặc thư mục có tồn tại trong Python, cũng như cách mở file an toàn.

Sử dụng khối try-except trong Python
Thay vì kiểm tra xem file có tồn tại hay không trước khi mở, bạn có thể trực tiếp mở file và bao bọc mã của mình trong một khối try-except. Chiến lược này được gọi là EAFP (Easier to Ask for Forgiveness than Permission), một phong cách lập trình phổ biến trong Python.
try:
    f = open("filename.txt")
except FileNotFoundError:
    # file không tồn tại
    print("file không tồn tại.")
else:
    # filetồn tại
    print("file đã được mở thành công.")
Lưu ý: Trong Python 2, ngoại lệ này là
IOErrorthay vìFileNotFoundError.
Sử dụng os.path.isfile(), os.path.isdir(), hoặc os.path.exists()  trong Python
Nếu bạn không muốn gây ra ngoại lệ hoặc chỉ cần kiểm tra sự tồn tại mà không cần mở file, thư viện os.path cung cấp một số phương thức hữu ích:
Bài viết này được đăng tại [free tuts .net]
os.path.isfile(path): Trả vềTruenếu đường dẫn là một filehợp lệ.os.path.isdir(path): Trả vềTruenếu đường dẫn là một thư mục hợp lệ.os.path.exists(path): Trả vềTruenếu đường dẫn là file hoặc thư mục hợp lệ.
Ví dụ:
import os
if os.path.isfile("filename.txt"):
    print("file tồn tại.")
    f = open("filename.txt")
if os.path.isdir("data"):
    print("Thư mục tồn tại.")
if os.path.exists("file_path"):
    print("file hoặc thư mục tồn tại.")
Sử dụng Path.is_file() từ thư viện pathlib trong Python
Từ Python 3.4, bạn có thể sử dụng thư viện pathlib để xử lý đường dẫn theo hướng đối tượng. Đây là cách tiếp cận hiện đại và ngày càng được ưa chuộng.
Tạo đối tượng Path:
from pathlib import Path
my_file = Path("/path/to/file")
Kiểm tra với các phương thức is_file(), is_dir(), và exists():
if my_file.is_file():
    print("file tồn tại.")
if my_file.is_dir():
    print("Thư mục tồn tại.")
if my_file.exists():
    print("file hoặc thư mục tồn tại.")
Kết bài
Dù bạn chọn phương pháp nào, việc kiểm tra file hoặc thư mục trước khi thao tác là bước quan trọng để đảm bảo chương trình của bạn hoạt động ổn định và an toàn. pathlib là lựa chọn hiện đại, dễ đọc và mạnh mẽ, trong khi các phương thức của os.path vẫn hữu ích đối với các phiên bản Python cũ hơn.

            Các kiểu dữ liệu trong C ( int - float - double - char ...)        
            Thuật toán tìm ước chung lớn nhất trong C/C++        
            Cấu trúc lệnh switch case trong C++ (có bài tập thực hành)        
            ComboBox - ListBox trong lập trình C# winforms        
            Random trong Python: Tạo số random ngẫu nhiên        
            Lệnh cin và cout trong C++        
                Cách khai báo biến trong PHP, các loại biến thường gặp            
                Download và cài đặt Vertrigo Server            
                Thẻ li trong HTML            
                Thẻ article trong HTML5            
                Cấu trúc HTML5: Cách tạo template HTML5 đầu tiên            
                Cách dùng thẻ img trong HTML và các thuộc tính của img            
                Thẻ a trong HTML và các thuộc tính của thẻ a thường dùng