2017-06-13 785 views
0

当执行下面的代码时,是否有一个Python循环遍历提供的目录中的文件的顺序?它是否按字母顺序?我如何着手建立这些文件循环的订单,或者按照创建/修改日期或按字母顺序)。使用os.listdir读取文件的顺序?

import os 
for file in os.listdir(path) 
    df = pd.read_csv(path+file) 
    // do stuff 
+1

['os.listdir(路径)'](https://docs.python.org/3.4/library/os.html#os.listdir):返回包含所述名称的列表路径给出的目录中的条目。该列表以任意顺序排列,不包含特殊条目'。'和'..',即使它们存在于目录中。 –

回答

1

你问几个问题:

  • 是否有它是由Python遍历文件的顺序?

不,Python不强制命令。这些文件按照底层操作系统使用的相同顺序返回。

  • 它是按字母顺序排列?

可能不是。

  • 我该如何建立订单?

for file in sorted(os.listdir(path)):

+0

非常感谢! –

1

按照文件:“这份名单是按任意顺序”

https://docs.python.org/3.6/library/os.html#os.listdir

如果你想(在这种情况下,按字母顺序排列)建立一个订单,你可以对它进行排序。

import os 
for file in sorted(os.listdir(path)): 
    df = pd.read_csv(path+file) 
    // do stuff 
+0

非常感谢! –