os.scandir声称是一个更好的目录迭代器,比os.walk()更快。它成为Python3的stdlib的一部分。在生产环境中工作时,当从os.walk()迁移到os.scandir()时,需要考虑哪些事项
发布于 2015-09-04 04:11:36
我曾经在Python2.7中使用过os.scandir()。它继续崩溃,因为奇怪的unicode字符。(ù ỳ ǹ等)。切换回os.walk(),一切都很好。我建议你试一试,如果有问题的话。
除此之外,它确实更快,特别是在Windows上。
发布于 2015-10-15 17:35:55
我对Python不是很熟悉,但最近我不得不编写一些Python2.x脚本,它使用os.walk()来枚举大量文件。最后,我在C#上编写了虚拟文件枚举。代码:
string dirPath = @"d:\";
DirectoryInfo di = new DirectoryInfo (dirPath)
var fi = di.EnumerateFiles ("*", SearchOption.AllDirectories);运行虚拟枚举和python变得更快:)注意:这仅在.NET 4.0和更高版本中可用
https://stackoverflow.com/questions/32387023
复制相似问题