Reputation: 880
I am trying to find csv files located in different folders my working directory. i also have csv files in my working directory
if i do
path = "./directory/src_folder"
csv_files = glob.glob(path + "/**/*.csv", recursive = True)
print(csv_files)
OUTPUT
['./directory/src_folder/src_file1.csv',
['./directory/src_folder/src_file2.csv',
'./directory/src_folder/subdirectory1/subdirectory_file.csv',
'./directory/src_folder/subdirectory2/subdirectory_file.csv'
'./directory/src_folder/subdirectory3/subdirectory_file.csv',]
However I want to only search the subdirectories which means it should exclude the files in the working directory.
DISERABLE OUTPUT
['./directory/src_folder/subdirectory1/subdirectory_file.csv',
'./directory/src_folder/subdirectory2/subdirectory_file.csv'
'./directory/src_folder/subdirectory3/subdirectory_file.csv',]
Upvotes: 0
Views: 514
Reputation: 71
**
basically recurses over folders and subfolders ( and also file present in the path directly ). You can explicitly specify depth as follows
glob.glob(path + "/*/*.csv", recursive = True)
Upvotes: 3
Reputation: 2233
Loop through and remove files in the directory
csv_files = glob.glob(path + "/**/*.csv", recursive = True)
csv_files_to_remove = glob.glob(path + "/**/*.csv")
for i in csv_files:
if file in csv_files_to_remove:
csv_files.remove(file)
Upvotes: 1