Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Module os.path trong Python


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