Почему os.walk в python возвращает меньше файлов, чем при использовании C # Directory.GetFiles? Я ожидал бы таких же результатов при использовании того же начального каталога.
Мой код Python:
import os
#Note that startdir is entered as 'Z:\directoryname', same as c# below
startdir = input("Enter Starting Path: ")
fileList = []
for(dirname, dirs, files) in os.walk(startdir, followlinks=True):
for filename in files:
thefile = os.path.join(dirname,filename)
fileList.append(thefile)
printline = 'Total: ' + str(len(fileList))
print(printline)
C # это просто:
using System.IO;
...
string rootPath = @"Z:\directoryname";
string[] dirReturn = Directory.GetFiles(rootPath, "*", SearchOption.AllDirectories);
Но Python возвращает 653231 файлов в массиве, а C # возвращает 653271 (разница 40).
Я проверил массив C # на наличие дубликатов и не нашел ни одного. Я сравнил два массива и нашел файлы в массиве C #, которые отсутствуют в массиве Python; все файлы C # действительны.
Я признаю, что, похоже, получаю действительные результаты из своего кода C # и, возможно, должен быть счастлив, но я хотел бы понять, почему между этими двумя результатами существует расхождение.