Module os.path được sử dụng rộng rãi khi xử lý file từ các vị trí khác nhau trong hệ thống. Nó phục vụ nhiều mục đích: nối đường dẫn, chuẩn hóa, lấy tên file/thư mục. Tất cả hàm chấp nhận bytes hoặc string. Kết quả phụ thuộc vào hệ điều hành.
os.path.basename
Trả về phần cuối của đường dẫn (tên file hoặc thư mục). Lưu ý sự khác biệt giữa dấu gạch chéo ngược (Windows) và gạch chéo xuôi (Linux).
Ví dụ
import os
# Windows
fldr = os.path.basename("C:\\Users\\xyz\\Documents\\My Web Sites")
print(fldr)
file = os.path.basename("C:\\Users\\xyz\\Documents\\My Web Sites\\intro.html")
print(file)
# Linux/Unix
fldr = os.path.basename("/Documents/MyWebSites")
print(fldr)
file = os.path.basename("/Documents/MyWebSites/music.txt")
print(file)
Kết quả:
Đầu ra
My Web Sites intro.html MyWebSites music.txt
os.path.dirname
Trả về tên thư mục chứa file/thư mục.
Ví dụ
import os
# Windows
DIR = os.path.dirname("C:\\Users\\xyz\\Documents\\My Web Sites")
print(DIR)
# Linux
DIR = os.path.dirname("/Documents/MyWebSites")
print(DIR)
Kết quả:
Đầu ra
C:\Users\xyz\Documents /Documents
os.path.isfile
Kiểm tra đường dẫn có phải file hay không. Trả về False nếu file không tồn tại, True nếu tồn tại.
Ví dụ
import os
IS_FILE = os.path.isfile("C:\\Users\\xyz\\Documents\\My Web Sites\\intro.html")
print(IS_FILE)
# Linux
IS_FILE = os.path.isfile("/Documents/MyWebSites")
print(IS_FILE)
IS_FILE = os.path.isfile("/Documents/MyWebSites/music.txt")
print(IS_FILE)
Kết quả:
Đầu ra
False True False True
os.path.normpath
Chuẩn hóa đường dẫn: loại bỏ gạch chéo thừa, chuyển đổi dấu gạch chéo phù hợp OS.
Ví dụ
import os
# Windows path
NORM_PATH = os.path.normpath("C:/Users/Pradeep/Documents/My Web Sites")
print(NORM_PATH)
# Unix Path
NORM_PATH = os.path.normpath("/home/ubuuser//Documents/")
print(NORM_PATH)
Kết quả (chạy trên Windows vs Linux):
Đầu ra
# Running in Windows C:\Users\Pradeep\Documents\My Web Sites \home\ubuuser\Documents # Running in Linux C:/Users/Pradeep/Documents/My Web Sites /home/ubuuser/Documents