gpt4 book ai didi

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

转载 作者:IT老高 更新时间:2023-10-28 21:11:12 29 4
gpt4 key购买 nike

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

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

那我通常会按这个顺序得到一个列表:

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

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

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

最佳答案

您可以使用内置的 sorted 函数对字符串进行任意排序。根据你的描述,

sorted(os.listdir(whatever_directory))

或者,您可以使用列表的 .sort 方法:

lst = os.listdir(whatever_directory)
lst.sort()

我认为应该做的伎俩。

请注意,os.listdir 获取文件名的顺序可能完全取决于您的文件系统。

关于python - 来自 os.listdir() 的非字母数字列表顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4813061/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com