Я определяю функцию для рекурсивного поиска файла, НО странно, что он не может вернуть путь к файлу.
Сначала я определяю функцию
import os
def searchFile(target,root):
items = os.listdir(root)
for item in items:
path = os.path.join(root,item)
if os.path.isdir(path):
#print(path)
searchFile(target,path)
elif os.path.isfile(path):
#print(path)
if os.path.basename(path) == target:
print('if have already executed!!! ')
print(path)
print(target)
return path
Функция ведет себя следующим образом
Случай 1:
Когда я использую эту функцию для поиска file_1в текущем пути "." функция возвращает полный путь к файлу_1
return_value = searchFile(target='file_1',root='.')
print(return_value) # ./file_1
Случай 2:
Когда я использую эту функцию для поиска файла_1 в каталоге "./result_new"Например, функция возвращает" Нет "
return_value = searchFile(target = 'file_1',root='.')
print(return_value) # None
Я ожидаю, что эта функция должна возвращать путь к файлу.