环境 OS X10.11python3.5
[x for x in os.listdir('.') if os.path.isdir(x)]这条命令中 我把path换成了我的桌面/Users/账户名/Desktop但是打印不出来任何目录都是[]
请问是为什么呢
3 回答
慕尼黑的夜晚无繁华
TA贡献1864条经验 获得超6个赞
很简单
os.listdir('/Users/<user>/Desktop')
这个得到的是你桌面上所有文件夹的名字,形如['a','b','c']
然后后面的
os.path.isdir(x)
就等效于每次都去判断那些文件夹在你当前目录下是否存在,自然就什么目录都没有了。
如果想得到期望的结果,你需要这样:
[x for x in os.listdir('/Users/<user>/Desktop') if os.path.isdir('/Users/<user>/Desktop'+x)]
炎炎设计
TA贡献1808条经验 获得超4个赞
import os
f = []
for (dirpath, dirnames, filenames) in os.walk('.'):
f.extend(dirnames)
break
print(f)
添加回答
举报
0/150
提交
取消