一部のフォルダ内のディレクトリのみを一覧表示できるようにしたい。これは、ファイル名を一覧表示したくない、または追加のサブフォルダを必要としないことを意味します。
例が役立つかどうか見てみましょう。現在のディレクトリには次のものがあります。
>>> 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']
ただし、ファイル名をリストに含めたくありません。\ Lib \ cursesなどのサブフォルダーも必要ありません。基本的に私が欲しいものは以下で動作します:
>>> for root, dirnames, filenames in os.walk('.'):
... print dirnames
... break
...
['cx_Oracle-doc', 'DLLs', 'Doc', 'include', 'Lib', 'libs', 'Scripts', 'tcl', 'Tools']
しかし、私は同じ結果を達成するためのより簡単な方法があるのだろうかと思っています。トップレベルに戻るためだけにos.walkを使用するのは、非効率的/多すぎるという印象を受けます。