Reputation: 1097
Problem:
In my "D:/collection" folder, I have two types of files, that are "8-digit-number_type.dbf" and "character_type.dbf" as follows: 00093282.dbf, 00345602.dbf, 69209340.dbf, 69806980.dbf, 92406482.dbf, 93609360.dbf,..., aaa.dbf, bbb.dbf,....
Objective:
I want to take only the "8-digit-number_type.dbf" files, and exclude the "character_type.dbf" files from my analysis. I don't care about the "character_type.dbf" files. Then, I'd like to split the 8 digits into two 4-digit values. So, a listing file(say,list.txt) with two columns should look like the following:
0009 3282
0034 5602
6920 9340
6980 6980
9240 6482
9360 9360
....
And these values should be stored as character type.
How can I implement that in Python? Thank you.
Sincerely, Bill TP
Upvotes: 3
Views: 396
Reputation: 813
To use os.listdir(path)
with jamylak's solution, simply put the import statement from os import listdir
on the second line and change the paths declaration to paths = listdir('D:/')
Upvotes: 1
Reputation: 133504
>>> 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
Upvotes: 3