os.listdir()以混合顺序读取文件

2024-06-06 10:16:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试读取文件夹“Data”子文件夹“opticalmicroscopy”中的大约120个文件,按连续顺序读取这些文件非常重要。然而,os.listdir似乎混淆了顺序,这很奇怪,因为在“光学显微镜”中,我的文件是按顺序排列的。有解决办法吗

code

“光学显微镜”中列出我的文件的方式:

enter image description here


Tags: 文件文件夹data顺序os方式listdir光学
2条回答

如果执行help(os.listdir),您将在帮助的底部看到以下内容:

    The list is in arbitrary order.  It does not include the special
    entries '.' and '..' even if they are present in the directory.

这意味着输出的顺序不是错误的,但可能不是您所期望的。如果您想按照字母顺序输出,您可以这样做

parent_list = os.listdir()
parent_list.sort()
print(parent_list)

您可能还希望反转列表:

parent_list = os.listdir()
parent_list.reverse()
print(parent_list)

或者将这两者结合起来,形成一个反向排序列表:

parent_list = os.listdir()
parent_list.sort()
parent_list.reverse()
print(parent_list)

import os
parent_list = sorted(os.listdir("Data\opticalmicroscopy"), key=len)
for child in parent_list:
    print(child)

相关问题 更多 >