เพื่อดึงรายการซับไดเรกทอรีทั้งหมดแบบ recursive ให้ใช้ฟังก์ชัน os.walk ซึ่งคืนค่าเป็น tuple 3 ค่า โดยค่าแรกคือพาธของซับไดเรกทอรี
ตัวอย่างการใช้งาน:
import os
subdirs = [x[0] for x in os.walk('.')]
print(subdirs)
หากต้องการเฉพาะซับไดเรกทอรีชั้นหนึ่ง (immediate subdirectories) ให้ใช้ os.listdir ร่วมกับ os.path.isdir:
ตัวอย่าง
import os d = '.' subdirs = [os.path.join(d, o) for o in os.listdir(d) if os.path.isdir(os.path.join(d, o))]