【发布时间】:2020-06-11 21:25:52
【问题描述】:
我有三个文件:
x10.txt
x30.txt
x200.txt
如果我转到我的 MacOS 查找器并按名称排序,我会得到以下顺序:
x10.txt
x30.txt
x200.txt
我试图在 Python 中以相同的顺序获取它们。我正在使用以下代码:
mypath = '/path/to/files/'
files = [f for f in listdir(mypath) if isfile(join(mypath, f))]
files.sort()
但是得到这个命令:
x10.txt
x200.txt
x30.txt
在 Python 中有没有一种方法可以按照它们在 Finder 中出现的顺序对这些文件进行排序?我想知道字母顺序是否有多种不同的约定。
【问题讨论】:
-
所有文件名都遵循类似于
[SOME-TEXT][NUMBER].[FILE-ENDING]的格式吗? -
Finder 进行“自然排序”,特别处理文件名中的数字。
标签: python finder alphabetical-sort