如何按升序遍历目录中的文件

How to go through files in directory in ascending order

我目前在我的目录中有一个特定的文件,我正在 Python 中浏览并使用 os.listdir 进行迭代。

该目录中的文件存储为这样的数字:

36 51 72 117 138 255 . . . . 1095 2000 3001 4004

文件不是按此顺序迭代,而是根据文件中的第一个数字进行迭代。所以不是升序而是 1095->2000->3001->36->5001->51 等等。如何确保以正确的升序迭代?

我假设您已将文件名存储在列表中以供迭代,如果这样做,您所要做的就是:

fileList.sort()

然后像往常一样遍历它。

您可以使用 sorted:

sorted(os.listdir('path/to/dir'), key=int)

要确保顺序是数字,请执行 key=int。函数 os.listdir returns 一个列表,要遍历它们只需执行以下操作:

for files in sorted(os.listdir('path/to/dir'), key=int)