Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Mendapatkan Senarai Subdirektori dalam Python?

Bagaimanakah Saya Boleh Mendapatkan Senarai Subdirektori dalam Python?

DDD
DDDasal
2024-11-27 06:19:09769semak imbas

How Can I Get a List of Subdirectories in Python?

Mendapatkan Senarai Subdirektori dalam Python

Tertanya-tanya bagaimana untuk mendapatkan senarai komprehensif semua subdirektori yang berada dalam direktori semasa anda dalam Python? Walaupun anda mungkin biasa dengan mendapatkan semula penyenaraian fail, tugas mengekstrak subdirektori memerlukan pendekatan yang berbeza.

Penyelesaian Menggunakan os.walk

Untuk melintasi pepohon direktori dan tangkap semua subdirektori, anda boleh menggunakan fungsi os.walk Python. Ia menghasilkan tuple untuk setiap subdirektori, dengan elemen pertama mewakili nama direktori.

Dengan memanfaatkan pemahaman senarai, anda boleh mengasingkan nama direktori dan memasang senarai lengkap:

[x[0] for x in os.walk(directory)]

Mendapatkan semula Subdirektori Segera

Mungkin anda hanya berminat untuk mengekstrak subdirektori segera, memintas sebarang struktur direktori bersarang. Untuk mencapai matlamat ini, anda boleh memanfaatkan os.walk dalam kombinasi dengan menghiris:

next(os.walk('.'))[1]

Pendekatan Alternatif

Sebagai alternatif, anda boleh meneroka kaedah lain menggunakan os.listdir dan os.path.isdir, membolehkan anda menapis dan memilih hanya direktori daripada direktori penyenaraian.

Menyesuaikan Diri dengan Keperluan Anda

Sama ada anda mencari senarai rekursif semua subdirektori atau senarai ringkas subdirektori segera, Python menyediakan fungsi serba boleh untuk memenuhi keperluan khusus anda keperluan. Dengan menggunakan teknik ini, anda boleh menavigasi dan memanipulasi struktur direktori anda dengan berkesan dalam program Python anda.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mendapatkan Senarai Subdirektori dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn