Nếu có một số lượng lớn các tệp tin cần xử lý trong chương trình Python, chúng ta có thể sắp xếp chúng vào các thư mục khác nhau để quản lý tệp diễn ra dễ dàng và đơn giản hơn
Trong Python, cung cấp cho chúng ta mô-đun hệ điều hành – đây là mô-đun cấp cho chúng ta nhiều phương thức và hàm có sẵn hữu ích để làm việc với các thư mục [và cả tệp tin]. Để có thể sử dụng được các hàm này, ta cần nhập thư viện os vào trong chương trình như sau
import os
Sau khi nhập hệ điều hành thư viện vào chương trình, ta có thể sử dụng các hàm/phương thức để thao tác với cả File và thao tác với cả thư mục [Thư mục]
2. Lấy đường dẫn của thư mục hiện tại trong PythonChúng ta có thể lấy thư mục đang làm việc hiện tại bằng cách sử dụng hàm os. getcwd[] trong chương trình Python. hàm os. getcwd[] này trả về đường dẫn thư mục làm việc hiện tại dưới dạng một chuỗi. Ngoài ra, chúng ta cũng có thể sử dụng hàm os. getcwdb[] để lấy đường dẫn của thư mục bên dưới định dạng đối tượng byte
Ví dụ dưới đây, tôi sẽ lấy ra đường dẫn của thư mục hiện tại có chứa File python đang được thực thi bằng cách sử dụng hàm os. getcwdb[] as after
# D:\laptrinhtudau\python\main.py import os # Lay ra duong dan thu muc hien tai bang ham getcwd[] duongdan = os.getcwd[] print["File Python dang o thu muc"] print[duongdan]
Kết quả
File Python dang o thu muc
D. \laptrinhtudau\python
Chúng ta có thể thay đổi thư mục đang làm việc hiện tại bằng cách sử dụng hàm os. chdir[]. Đường dẫn mới mà chúng tôi muốn thay đổi thành phải được cung cấp dưới dạng một chuỗi và truyền vào hàm này
Ví dụ đơn giản, sử dụng hàm os. chdir[] to change the working directory at from “D. \laptrinhtudau\python” sang thư mục “D. \laptrinhtudau\python_example” as after
# D:\laptrinhtudau\python\main.py import os # Lay ra duong dan thu muc hien tai bang ham getcwd[] duongdan = os.getcwd[] print["Thu muc hien tai la"] print[duongdan] # Thay doi thu muc hien tai bang thu muc "D:\laptrinhtudau/python_example" os.chdir['D:\laptrinhtudau/python_example'] # Lay ra duong dan moi sau khi thay doi duongdanmoi = os.getcwd[] print["Thu muc sau khi thay doi la"] print[duongdanmoi]
Kết quả
Thu muc hien tai laD. \laptrinhtudau\python
Thu mục sau khi thay đổi là
D. \laptrinhtudau\python_example 4. Liệt kê các tập tin và thư mục trong Python
Tất cả các tệp tin và thư mục con bên trong một thư mục cha đều có thể được truy xuất bằng cách sử dụng hàm os. listdir[] để thực hiện công việc này. Hàm này nhận một đường dẫn và trả về danh sách các thư mục con và tệp trong đường dẫn đó. Nếu không có đường dẫn nào được chỉ định, nó sẽ trả về danh sách các thư mục con và tệp từ thư mục đang làm việc hiện tại
Ví dụ dưới đây, liệt kê ra các tệp tin và thư mục con có trong thư mục cha là “D. \laptrinhtudau\python_example” bằng cách sử dụng hàm os. listdir[] as after
# D:\laptrinhtudau\python\main.py import os # Liet ke cac file va thuc muc co trong "D:\laptrinhtudau\python_example" danhsach = os.listdir["D:\laptrinhtudau\python_example"] # Hien thi danh sach cac file va thu muc theo List print[danhsach]
Kết quả
[‘ex1. py', 'ex2. py', 'ex3. py', 'ex4. py', 'ex5. py’, ‘example_advanced’, ‘example_basic’]Các File và thư mục tương ứng với nhau tại “D. \laptrinhtudau\python_example” như bên dưới
If as function os. listdir[] không truyền bất kỳ đường dẫn nào vào hàm, khi đó hàm này sẽ trả về danh sách các tệp tin và thư mục có trong thư mục đang làm việc hiện tại
# D:\laptrinhtudau\python\main.py import os # Liet ke cac file va thuc muc trong thu muc dang lam viec danhsach = os.listdir[] # Hien thi danh sach cac file va thu muc theo List print[danhsach]
Kết quả
['chính. py', '__pycache__']Các Tệp và thư mục tương ứng với các thư mục đang làm việc với tệp Python như bên dưới
We could create a new directory by function os. mkdir[]. Hàm này nhận vào đường dẫn của thư mục mới. Nếu đường dẫn thư mục mới không được chỉ định trong hàm, thì việc tạo thư mục mới sẽ được đặt vào trong thư mục đang làm việc hiện tại
Ví dụ: tạo một thư mục có tên “example_oop” và đặt thư mục này vào trong thư mục cha “D. \laptrinhtudau\python_example” bằng cách sử dụng hàm os. mkdir[] as after
# D:\laptrinhtudau\python\main.py import os # Lay ra danh sach ten tep tin va thu muc ban dau trong "D:\laptrinhtudau\python_example" print["Thu muc ban dau"] print[os.listdir["D:\laptrinhtudau\python_example"]] # Khai bao duong dan thu muc can tao duongdan = "D:\laptrinhtudau\python_example\example_oop" # Tao thu muc theo duong dan bang ham mkdir[] os.mkdir[duongdan] # Lay ra danh sach cac tep tin va thu muc co trong "D:\laptrinhtudau\python_example" print["Thu muc sau khi tao thu muc moi"] print[os.listdir["D:\laptrinhtudau\python_example"]]
Kết quả
Thu muc ban dau[‘ex1. py', 'ex2. py', 'ex3. py', 'ex4. py', 'ex5. py’, ‘example_advanced’, ‘example_basic’]
Thu mục sau khi tạo thu mục mới
[‘ex1. py', 'ex2. py', 'ex3. py', 'ex4. py', 'ex5. py’, ‘example_advanced’, ‘example_basic’, ‘example_oop’]
Sau khi tạo thư mục “example_oop” và đặt thư mục này trong thư mục cha “D. \laptrinhtudau\python_example” ta sẽ thấy nó xuất hiện như bên dưới
If as function os. mkdir[] không truyền bất kỳ đường dẫn nào vào hàm, khi đó hàm này sẽ tạo ra một thư mục mới và đặt vào trong thư mục đang làm việc hiện tại
# D:\laptrinhtudau\python\main.py import os # Lay ra danh sach ten tep tin va thu muc ban dau dang lam viec print["Thu muc ban dau"] print[os.listdir[]] # Tao thu muc co ten "debug" trong thu muc dang lam viec os.mkdir["debug"] # Lay ra danh sach ten tep tin va thu muc dang lam viec print["Thu muc sau khi tao thu muc moi"] print[os.listdir[]]
Kết quả
Thu muc ban dau[‘main. py’, ‘__pycache__’]
Thu mục sau khi tạo thu mục mới
[‘debug’, ‘main. py’, ‘__pycache__’]
Sau khi tạo thư mục “gỡ lỗi” và đặt thư mục này trong thư mục đang làm việc, khi đó chúng ta sẽ thấy một thư mục mới được tạo ra cùng với File Python đang thực thi
Để đổi tên bất kỳ thư mục hoặc tệp nào, chúng ta có thể sử dụng hàm os. rename[] this functionNhận hai đối số cơ bản. tên cũ của thư mục và tên mới cần thay đổi cho thư mục
Ví dụ dưới đây, sử dụng hàm os. rename[] to change the name directory “python” at path “D. \laptrinhtudau\python” to name new “python_tutorial” as after
# D:\laptrinhtudau\python\main.py import os # Lay ra thu muc ban dau co ten "python" print["Thu muc ban dau"] print[os.listdir["D:\laptrinhtudau"]] # Doi ten "python" thanh "python_tutorial" os.rename["D:\laptrinhtudau\python","D:\laptrinhtudau\python_tutorial"] # Lay ra thu muc sau khi doi ten "python_tutorial" print["Thu muc sau khi doi ten"] print[os.listdir["D:\laptrinhtudau"]]
Kết quả
Thu mục đầu tiên['python', 'python_example']
Thu mục sau khi đổi tên
[‘python_example’, ‘python_tutorial’]
Sau khi thực hiện chương trình trên, ta có thể truy cập vào đường dẫn thư mục cha “D. \laptrinhtudau\” – thư mục này chứa thư mục “python_tutorial” vừa được đổi tên
Khi sử dụng hàm os. đổi tên[] nhưng chỉ truyền vào tên cũ của thư mục và tên mới cần thay đổi cho thư mục mà không truyền vào đường dẫn của thư mục khi đó các thư mục trong thư mục hiện tại đang làm việc sẽ được thay đổi tên
________số 8Kết quả
Thu muc ban dau[‘debug’, ‘main. py’, ‘__pycache__’]
Thu mục sau khi đổi mười
[‘config’, ‘main. py’, ‘__pycache__’]
Chạy chương trình thành công, chúng ta sẽ truy cập vào đường dẫn hiện tại mà chúng ta đang làm việc “D. \laptrinhtudau\python” sẽ thấy sự thay đổi như sau
Khi thao tác với ngôn ngữ lập trình Python, để xóa một thư mục bằng Python ta cần sử dụng hàm os. rmdir[] để thực hiện công việc này.
Ví dụ đơn giản dưới đây, sử dụng hàm os. rmdir[] để xóa thư mục có tên là “python_example” tại đường dẫn “D. \laptrinhtudau\python_example” as after.
# D:\laptrinhtudau\python\main.py import os # Lay ra ten cac thu muc ban dau print["Thu muc ban dau"] print[os.listdir["D:\laptrinhtudau"]] # Xoa thu muc "python_example" bang ham rmdir[] os.rmdir["D:\laptrinhtudau\python_example"] # Lay ra ten cac thu muc sau khi xoa thu muc "python_example" print["Thu muc sau khi xoa"] print[os.listdir["D:\laptrinhtudau"]]Thu muc dau tien
['python', 'python_example']
Thu muc sau khi xoa
[‘python’]
Sau khi xóa thư mục “ví dụ về python”, chúng ta có thể truy cập vào thư mục gốc “D. \laptrinhtudau” – thư mục cha của thư mục này để kiểm tra kết quả
Chú thích. Khi xóa thư mục, bạn cũng xóa mọi nội dung bên trong thư mục đó. Vì vậy, để tránh xóa nhầm thư mục, bạn hãy sao lưu thư mục đó ra một ổ đĩa khác