Rekursif Direktori Traversal dengan os.walk() dalam Python
Dalam Python, fungsi os.walk() ialah alat yang berkuasa untuk merentasi direktori dan subdirektori secara rekursif. Dengan memanfaatkan fungsinya, anda boleh menavigasi melalui sistem fail anda dan mengakses fail serta direktori dengan cekap.
Menggunakan os.walk() untuk Mencetak Struktur Direktori
Pertimbangkan perkara berikut kod:
import os for root, dirs, files in os.walk("."): print(root) print("") for items in fnmatch.filter(files, "*"): print("..." + items) print("")
Kod ini akan merentasi direktori semasa dan mencetak direktori serta fail di dalamnya. Walau bagaimanapun, output tidak akan berada dalam format yang diingini: direktori dan fail akan disenaraikan dengan cara yang sama.
Menyesuaikan Output Traversal Direktori
Untuk mencetak direktori dan struktur fail seperti yang dikehendaki, seperti:
A ---a.txt ---b.txt ---B ------c.out
di mana A dan B ialah direktori dan selebihnya ialah fail, anda boleh mengubah suai kod seperti berikut:
import os for root, dirs, files in os.walk("."): path = root.split(os.sep) print((len(path) - 1) * '---', os.path.basename(root)) for file in files: print(len(path) * '---', file)
Kod yang diubah suai ini:
Dengan melaraskan lekukan dan menggunakan fungsi nama asas, anda boleh menyesuaikan output untuk memenuhi keperluan khusus anda. Teknik ini membolehkan anda menggambarkan hierarki direktori dan mengakses fail serta direktori dengan lebih mudah.
Atas ialah kandungan terperinci Bagaimanakah saya boleh menyesuaikan output os.walk() untuk menggambarkan struktur direktori rekursif dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!