【Errors】Python的os.listdir()返回结果不按想要的文件顺序排序

这里写自定义目录标题

  • 问题
  • 解决方案

问题

python里os.listdir()并不总是按照我们想要的顺序来排序的。
【Errors】Python的os.listdir()返回结果不按想要的文件顺序排序_第1张图片
这几天在读取ABO下的数据集时,我写的代码在Windows下完美运行,render的图像和segmentation、base_color、metallic_roughness、normal是完全能够对应的。于是我就放心地把代码放到服务器上跑了,跑了三周,换了各种各样的网络结构,但是都训练不出来好的效果,今天我决定从头开始重新检查,结果发现,虽然在Windows下排序完全不会乱,但是在Ubuntu下可以说是完全乱套了,如下图所示。
Windows:
【Errors】Python的os.listdir()返回结果不按想要的文件顺序排序_第2张图片

Ubuntu:
【Errors】Python的os.listdir()返回结果不按想要的文件顺序排序_第3张图片

解决方案

因为乱序了,所以我们要做的就是将它们进行排序。
因为我这里的层级结构比较复杂,我就不放具体的代码了,但是可以先做子文件夹排序,再做子文件夹下子文件夹的排序,我参考的这个链接非常有帮助:【python】python中os.listdir的排序问题

你可能感兴趣的:(Errors,深度学习,python)