按顺序依次读取文件

时间:2014-01-22 16:59:48

标签: python file-io

我在文件夹中有许多文件,其名称遵循惯例:

0.1.txt, 0.15.txt, 0.2.txt, 0.25.txt, 0.3.txt, ...

我需要逐个读取它们并操纵它们内部的数据。目前,我使用以下命令打开每个文件:

import os
# This is the path where all the files are stored.
folder path = '/home/user/some_folder/'
# Open one of the files,
for data_file in os.listdir(folder_path):
    ...

不幸的是,它没有按特定顺序读取文件(不确定它是如何选择它们)而我需要从具有最小编号作为文件名的文件开始读取它们,然后是具有直接较大编号的文件,依此类推,直到最后一个。

1 个答案:

答案 0 :(得分:6)

使用sorted()返回新排序列表的简单示例。

import os
# This is the path where all the files are stored.
folder_path = 'c:\\'
# Open one of the files,
for data_file in sorted(os.listdir(folder_path)):
    print data_file

您可以在Docs

了解更多信息

编辑自然排序:

如果您正在寻找自然分类,您可以通过@unutbu

看到这个很棒的post