我想計算路徑中的命令 /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
添加回答
舉報
0/150
提交
取消