Ich möchte nur die Verzeichnisse in einem Ordner auflisten können. Dies bedeutet, dass ich weder Dateinamen noch zusätzliche Unterordner auflisten möchte.
Mal sehen, ob ein Beispiel hilft. Im aktuellen Verzeichnis haben wir:
>>> os.listdir(os.getcwd())
['cx_Oracle-doc', 'DLLs', 'Doc', 'include', 'Lib', 'libs', 'LICENSE.txt', 'mod_p
ython-wininst.log', 'NEWS.txt', 'pymssql-wininst.log', 'python.exe', 'pythonw.ex
e', 'README.txt', 'Removemod_python.exe', 'Removepymssql.exe', 'Scripts', 'tcl',
'Tools', 'w9xpopen.exe']
Ich möchte jedoch nicht, dass Dateinamen aufgelistet werden. Ich möchte auch keine Unterordner wie \ Lib \ curses. Im Wesentlichen funktioniert das, was ich möchte, mit Folgendem:
>>> for root, dirnames, filenames in os.walk('.'):
... print dirnames
... break
...
['cx_Oracle-doc', 'DLLs', 'Doc', 'include', 'Lib', 'libs', 'Scripts', 'tcl', 'Tools']
Ich frage mich jedoch, ob es einen einfacheren Weg gibt, die gleichen Ergebnisse zu erzielen. Ich habe den Eindruck, dass die Verwendung von os.walk nur zur Rückgabe der obersten Ebene ineffizient / zu viel ist.