我经常使用 python 来处理数据目录。最近,我注意到列表的默认顺序已更改为几乎无意义的东西。例如,如果我在包含以下子目录的当前目录中:run01、run02、… run19、run20,然后我从以下命令生成一个列表:
dir = os.listdir(os.getcwd())
然后我通常会按以下顺序得到一个列表:
dir = ['run01', 'run18', 'run14', 'run13', 'run12', 'run11', 'run08', ... ]
等等。该顺序曾经是字母数字的。但是这个新秩序已经存在了一段时间了。
是什么决定了这些列表的(显示)顺序?
我认为顺序与文件在文件系统上的索引方式有关。如果你真的想让它遵守某种顺序,你总是可以在获取文件后对列表进行排序。