为了账号安全,请及时绑定邮箱和手机立即绑定

os.listdir 打印的文件比命令 `ls` 多但少于 `ls -a`

os.listdir 打印的文件比命令 `ls` 多但少于 `ls -a`

沧海一幻觉 2021-07-29 17:46:41
我想计算路径中的命令 /Users/me/anaconda3/binIn [3]: len(os.listdir("/Users/me/anaconda3/bin"))                                                            Out[3]: 474但是,当我检查命令时In [5]: !count=0; for f in $(ls /Users/me/anaconda3/bin) ;do count=$(( $count + 1)); done; echo $count        470但是,如果检查所有文件:In [17]: ls -a /Users/me/anaconda3/bin | wc -l                                                                476造成差异的原因是什么?
查看完整描述

1 回答

?
慕标琳琳

TA贡献1830条经验 获得超9个赞

如果您阅读os.listdir的文档,这很容易

返回一个包含路径给定目录中条目名称的列表。该列表按任意顺序排列,不包括特殊条目“.”。和 '..' 即使它们存在于目录中。

这意味着 os.listdir 命令始终具有

no_of_elements_in(`ls -a`)-no_of_elements_in(".. and  .")

那是

len('os.listdir') =no_of_elements_in(`ls -a`)-2

在你的情况下 474=476-2


查看完整回答
反对 回复 2021-08-03
  • 1 回答
  • 0 关注
  • 168 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号