在python中,有没有一种简单的方法对目录中的文件进行排序?我想整理的文件是
file_01_001
file_01_005
...
file_02_002
file_02_006
...
file_03_003
file_03_007
...
file_04_004
file_04_008
我想要的是
file_01_001
file_02_002
file_03_003
file_04_004
file_01_005
file_02_006
...
我目前正在使用glob
为目录打开它们,如下所示:
for filename in glob(path):
with open(filename,'rb') as thefile:
#Do stuff to each file
所以,当程序执行所需的任务时,如果我一次执行多个文件,由于文件的顺序,它会给出不正确的数据。有什么想法吗?
更好的解决方案是使用Tcl的“lsort-dictionary”:
Tcl字典排序将正确处理数字,您将得到与文件管理器用于排序文件的结果相似的结果。
如前所述,目录中的文件不是以特定的方式进行固有排序的。因此,我们通常1)获取文件名2)按所需属性对文件名进行排序3)按排序顺序处理文件。
您可以按如下方式获取目录中的文件名。假设目录是“~/home”,那么
要对文件名排序:
所以看起来如下:
要读入并按顺序处理它们,请执行以下操作:
相关问题 更多 >
编程相关推荐