Python:
Kiểm tra xem thư mục có tồn tại không
Làm thế nào:
Python làm cho việc kiểm tra một thư mục trở nên trực tiếp với các module os
và pathlib
:
Sử dụng os.path
:
import os
# Kiểm tra xem thư mục có tồn tại
if os.path.isdir("/đường/dẫn/đến/thư/mục"):
print("Thư mục tồn tại.")
else:
print("Thư mục không tồn tại.")
Sử dụng pathlib
:
from pathlib import Path
# Kiểm tra xem thư mục có tồn tại
directory = Path("/đường/dẫn/đến/thư/mục")
if directory.is_dir():
print("Thư mục tồn tại.")
else:
print("Thư mục không tồn tại.")
Đầu ra ví dụ:
Thư mục tồn tại.
hoặc
Thư mục không tồn tại.
Đi sâu:
Trong lịch sử, Python đã sử dụng module os
cho các hoạt động hệ thống tệp. Tuy nhiên, os.path.isdir()
đã là tiêu chuẩn de facto để kiểm tra các thư mục. Vấn đề là os.path
làm việc với chuỗi cho các đường dẫn, có thể là thô kệch.
Nhập vào module pathlib
hiện đại hơn, được giới thiệu trong Python 3.4. Nó sử dụng các đường dẫn hướng đối tượng, khiến mã trở nên dễ đọc và ngắn gọn hơn. Bây giờ bạn có Path.is_dir()
, một phương thức không chỉ làm cho mã của bạn gọn gàng hơn, mà còn có điều gì đó dễ chịu khi gọi phương thức liên tiếp tới một đối tượng Path.
Nếu những phương pháp này trả về False
cho một thư mục không tồn tại, có thể có hai nguyên nhân: hoặc là thư mục thực sự không ở đó, hoặc chương trình của bạn không có quyền để thấy nó.
Xem thêm:
- Tài liệu module
os
: https://docs.python.org/3/library/os.html - Tài liệu module
pathlib
: https://docs.python.org/3/library/pathlib.html - Quyền truy cập hệ thống tệp trong Python: https://docs.python.org/3/library/os.html#os.access