I have huge data in a directory tree format like:c:/user/name/class/std/section I to VI [all section has individual folder i.e. 6 folder in total and all folder have 100+ files to be processed]
I wrote a script in which if I give the folder containing the files e.g.Section I
then it would process files inside using glob.iglob
function.
Is it possible to write a script which can walk along directories by just entering one directory > processing file > leaving directory > entering different directory > and so on.
please help.
Addressing Abhisek's comment on Aragon's solution:
import os folder = 'C:'
for root, dirs, files in os.walk(folder):
for name in files:
(base, ext) = os.path.splitext(name)
if ext in "csv":
print os.path.join(root, name)
you can try this code :
import os
folder = 'C:'
for root, dirs, files in os.walk(folder):
for name in files:
print os.path.join(root, name)
for name in dirs:
print os.path.join(root, name)
UPDATE:
import os folder = 'C:'
for root, dirs, files in os.walk(folder):
for name in files:
nm, ext = os.path.splitext(name)
if ext == ".csv":
print os.path.join(root, name)
import os
for (dirpath, dirnames, filenames) in os.walk(directory):
# Do some processing
That will iterate through the root of the directory specified, for eg. c:/user/name/class/std
and enter every folder contained in it, and give you the folders and files contained in them. With that you should be able to do what you need to processing wise.
来源:https://stackoverflow.com/questions/10617731/walking-along-and-processing-files-in-directory-in-python