我希望只能列出某个文件夹中的目录。 这意味着我不希望列出文件名,也不希望额外的子文件夹。
让我们看看一个例子是否有帮助。在工作目录中我们有:
>>> 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 诅咒。基本上,我想要的工作如下:
>>> for root, dirnames, filenames in os.walk('.'):
... print dirnames
... break
...
['cx_Oracle-doc', 'DLLs', 'Doc', 'include', 'Lib', 'libs', 'Scripts', 'tcl', 'Tools']
然而,我想知道是否有一种更简单的方法来达到同样的结果。我得到的印象是,使用 os.walk 只返回顶层是低效的/太多了。