小编典典

来自 os.listdir() 的非字母数字列表顺序

all

我经常使用 python
来处理数据目录。最近,我注意到列表的默认顺序已更改为几乎无意义的东西。例如,如果我在包含以下子目录的当前目录中:run01、run02、…
run19、run20,然后我从以下命令生成一个列表:

dir = os.listdir(os.getcwd())

然后我通常会按以下顺序得到一个列表:

dir = ['run01', 'run18', 'run14', 'run13', 'run12', 'run11', 'run08', ... ]

等等。该顺序曾经是字母数字的。但是这个新秩序已经存在了一段时间了。

是什么决定了这些列表的(显示)顺序?


阅读 229

收藏
2022-08-08

共1个答案

小编典典

我认为顺序与文件在文件系统上的索引方式有关。如果你真的想让它遵守某种顺序,你总是可以在获取文件后对列表进行排序。

2022-08-08