如何在Python中获取目录中的文件名列表

时间:2012-04-29 00:46:01

标签: python

问题:

在我的“D:/ collection”文件夹中,我有两种类型的文件,即“8-digit-number_type.dbf”和“character_type.dbf”,如下所示:00093282.dbf,00345602.dbf,69209340。 dbf,69806980.dbf,92406482.dbf,93609360.dbf,...,aaa.dbf,bbb.dbf,....

目的:

我只想获取“8-number-number_type.dbf”文件,并从我的分析中排除“character_type.dbf”文件。我不关心“character_type.dbf”文件。然后,我想将8位数分成两个4位数值。因此,具有两列的列表文件(例如,list.txt)应如下所示:

0009 3282
0034 5602
6920 9340
6980 6980
9240 6482
9360 9360
....

这些值应存储为字符类型。

我如何在Python中实现它?谢谢。

此致 比尔TP

2 个答案:

答案 0 :(得分:3)

>>> import os
>>> paths = ['00093282.dbf', '00345602.dbf', '69209340.dbf', '69806980.dbf', '92406482.dbf', '93609360.dbf','aaa.dbf', 'bbb.dbf']
>>> for path in paths:
        file_name,ext = os.path.splitext(path)
        if file_name.isdigit():
            print '{0} {1}'.format(file_name[:4],file_name[4:])


0009 3282
0034 5602
6920 9340
6980 6980
9240 6482
9360 9360

答案 1 :(得分:1)

要将os.listdir(path)与jamylak的解决方案一起使用,只需将导入语句from os import listdir放在第二行,然后将路径声明更改为paths = listdir('D:/')