Phương thức walk[] trong Python tạo tên tệp trong cây thư mục bằng cách di chuyển cây từ trên xuống hoặc từ dưới lên
cú pháp
Sau đây là cú pháp của phương thức walk[] −
os.walk[top[, topdown=True[, onerror=None[, followlinks=False]]]]
Thông số
top - Mỗi thư mục bắt nguồn từ thư mục, mang lại 3-bộ, i. e. , [đường dẫn thư mục, tên thư mục, tên tập tin]
topdown − Nếu đối số tùy chọn topdown là True hoặc không được chỉ định, các thư mục sẽ được quét từ trên xuống. Nếu topdown được đặt thành Sai, các thư mục sẽ được quét từ dưới lên
onerror - Điều này có thể hiển thị lỗi để tiếp tục đi bộ hoặc đưa ra ngoại lệ để hủy bỏ đi bộ
liên kết theo dõi - Điều này truy cập các thư mục được chỉ ra bởi các liên kết tượng trưng, nếu được đặt thành true
Giá trị trả về
Phương thức này trả về giá trị
Ví dụ
Ví dụ sau minh họa cách sử dụng phương thức walk[]
# !/usr/bin/python import os for root, dirs, files in os.walk[".", topdown=False]: for name in files: print[os.path.join[root, name]] for name in dirs: print[os.path.join[root, name]]
Hãy để chúng tôi biên dịch và chạy chương trình trên, chương trình này sẽ quét tất cả các thư mục và thư mục con từ dưới lên trên
Ví dụ: nó giúp chúng tôi có thể lấy đường dẫn của thư mục mà chúng tôi đang làm việc, lấy tên của tất cả các tệp và thư mục trong một thư mục, tạo một thư mục mới hoặc xóa một thư mục hiện có, v.v.
Trong blog này, chúng ta hãy khám phá một số phương pháp hữu ích trong mô-đun os có thể hữu ích khi bạn làm việc trong dự án tiếp theo của mình
Trước khi bắt đầu, chúng ta hãy xem xét một số điều chúng ta cần lưu ý về mô-đun os
Thiết kế của tất cả các mô-đun phụ thuộc hệ điều hành tích hợp sẵn của Python sao cho miễn là có cùng chức năng, thì nó sử dụng cùng một giao diện
Các tiện ích mở rộng dành riêng cho một hệ điều hành cụ thể cũng có sẵn thông qua mô-đun os nhưng việc sử dụng chúng chắc chắn là một mối đe dọa đối với tính di động
Tất cả các hàm chấp nhận tên đường dẫn hoặc tên tệp đều chấp nhận cả đối tượng byte và chuỗi làm đầu vào và nếu đường dẫn hoặc tên tệp được trả về thì kết quả cũng là một đối tượng cùng loại
Tất cả các chức năng trong mô-đun python os đều gây ra lỗi OSError [hoặc các lớp con của chúng] khi gặp phải tên và đường dẫn tệp không hợp lệ hoặc không thể truy cập hoặc các đối số khác có loại chính xác nhưng không được hệ điều hành chấp nhận.
Hãy để chúng tôi bắt đầu bằng cách nhập mô-đun
Bây giờ chúng ta hãy đi qua từng phương pháp một
1. hệ điều hành. Tên
2. hệ điều hành. lỗi
Đây là lớp lỗi môi trường cho I/O và OSError. Nó xuất hiện khi bất kỳ hàm nào trả về bất kỳ lỗi nào liên quan đến hệ thống
3. hệ điều hành. tên[]
Cung cấp thông tin phiên bản phụ thuộc vào hệ thống
4. hệ điều hành. ctermid[]
Phương thức này trả về tên tệp tương ứng với thiết bị đầu cuối điều khiển của quy trình
5. hệ điều hành. môi trường
Nó là một đối tượng ánh xạ đại diện cho môi trường chuỗi. Ánh xạ này được ghi lại khi mô-đun os được nhập lần đầu và những thay đổi được thực hiện sau đó trong môi trường không được phản ánh ngoại trừ những thay đổi được thực hiện bằng cách sửa đổi trực tiếp os. môi trường
6. hệ điều hành. môi trường
Nó là một đối tượng ánh xạ đại diện cho môi trường dưới dạng chuỗi byte. Nó thực sự là phiên bản Bytes của hệ điều hành. môi trường. hệ điều hành. môi trường và hệ điều hành. môi trường được đồng bộ hóa. Nó khả dụng khi và chỉ khi supports_bytes_environ là True
7. hệ điều hành. getenv[key,default=None]
Phương thức này trả về giá trị của khóa biến môi trường nếu nó tồn tại và nếu nó không tồn tại thì giá trị mặc định được trả về
8. hệ điều hành. getcwd[]
Phương thức này trả về vị trí của thư mục làm việc hiện tại [CWD]. CWD là thư mục mà tập lệnh python đang hoạt động
9. hệ điều hành. listdir[]
Phương thức này trả về danh sách tất cả các tệp và thư mục có trong thư mục đã chỉ định. Nếu không có thư mục nào được chỉ định thì danh sách các tệp và thư mục bên trong CWD sẽ được trả về
10. hệ điều hành. chdir[]
Nó được sử dụng để thay đổi CWD. Nó thay đổi CWD thành đường dẫn đã chỉ định
11. hệ điều hành. mkdir[]
Phương thức này tạo một thư mục mới theo đường dẫn đã chỉ định. Trong trường hợp thư mục được chỉ định đã tồn tại, FileExistsError được nâng lên
12. hệ điều hành. makedirs[]
Phương pháp này tạo một thư mục theo cách đệ quy. Điều đó có nghĩa là trong khi tạo một thư mục lá nếu thiếu bất kỳ thư mục cấp trung gian nào được chỉ định trong đường dẫn thì phương thức sẽ tạo tất cả chúng
13. hệ điều hành. gỡ bỏ[]
Phương pháp này xóa một đường dẫn tập tin. Nó không thể xóa một thư mục. Trong trường hợp đường dẫn được chỉ định là của một thư mục thì OSError được nâng lên
14. hệ điều hành. rmdir[]
Phương pháp này được sử dụng để xóa một thư mục trống. Nếu đường dẫn không tương ứng với một thư mục trống thì OSError sẽ xuất hiện
15. hệ điều hành. đi bộ[]
Phương pháp này tạo tên tệp trong cây thư mục bằng cách di chuyển cây theo cách từ trên xuống hoặc từ dưới lên. hệ điều hành. walk trả về một trình tạo tạo một bộ giá trị [dirpath, dirnames, filenames]
16. hệ điều hành. con đường. tham gia[]
Phương thức này nối các thành phần đường dẫn khác nhau với chính xác một dấu tách thư mục [“/”] theo sau mỗi phần không trống ngoại trừ thành phần đường dẫn cuối cùng. Nếu thành phần đường dẫn cuối cùng trống thì dấu phân cách thư mục [“/”] được đặt ở cuối. Phương thức này trả về một chuỗi có đường dẫn nối
17. hệ điều hành. con đường. basename[]
Phương pháp này được sử dụng để lấy tên cơ sở trong một đường dẫn cụ thể. Phương thức trả về một giá trị chuỗi đại diện cho tên cơ sở của đường dẫn đã chỉ định
18. hệ điều hành. con đường. tách ra[]
Phương pháp này chia tên đường dẫn thành một cặp đầu và đuôi. Ở đây, phần đuôi là thành phần tên đường dẫn cuối cùng và phần đầu là mọi thứ xuất hiện trước nó. Phương thức trả về một bộ phần đầu và phần đuôi của đường dẫn đã chỉ định
19. hệ điều hành. con đường. dirname[]
Phương thức này trả về tên thư mục từ đường dẫn đã cho
20. hệ điều hành. con đường. tiền tố chung[]
Phương thức này trả về tiền tố đường dẫn dài nhất là tiền tố cho tất cả các đường dẫn trong danh sách đã chỉ định
21. hệ điều hành. con đường. getmtime[]
Phương thức này trả về thời gian sửa đổi cuối cùng của đường dẫn
22. hệ điều hành. con đường. thời gian nghỉ ngơi[]
Phương thức này trả về thời gian truy cập cuối cùng của đường dẫn
23. hệ điều hành. con đường. getctime[]
Phương thức này trả về ctime là thời điểm thay đổi cuối cùng [Unix] hoặc thời điểm tạo [Windows] tùy thuộc vào hệ thống
24. hệ điều hành. con đường. dấu cách []
Phương thức này trả về một phiên bản tuyệt đối được chuẩn hóa của đường dẫn đã chỉ định
25. hệ điều hành. con đường. đường chuẩn[]
Phương thức này chuẩn hóa tên đường dẫn đã chỉ định bằng cách thu gọn các dấu phân cách dư thừa và tham chiếu cấp cao
26. hệ điều hành. con đường. chữ thường[]
Phương thức này chuẩn hóa trường hợp của tên đường dẫn đã chỉ định
27. hệ điều hành. con đường. isfile[]
Phương pháp này kiểm tra xem đường dẫn được chỉ định có tương ứng với một tệp hiện có hay không. Phương thức này trả về một giá trị boolean
28. hệ điều hành. con đường. isdir[]
Phương thức này kiểm tra và báo cáo xem tên đường dẫn đã chỉ định có tương ứng với một thư mục hiện có hay không. Phương thức trả về một giá trị boolean
29. hệ điều hành. con đường. isab[]
Phương thức này xác định xem đường dẫn đã cho có phải là tuyệt đối hay không
30. hệ điều hành. con đường. tồn tại[]
Phương thức này trả về True cho các đường dẫn hiện có. Nó trả về Sai cho các liên kết tượng trưng bị hỏng
Phương tiện hiển thị trong bài viết này không thuộc sở hữu của Analytics Vidhya và được sử dụng theo quyết định của Tác giả.