Вы работаете в цикле
self.file_path = file_path
В каждой итерации он назначает новый путь к файлу и после выхода из цикла сохраняет значение последней итерации.
Вы можете объявить self.file_path
как list
def __init__(self, search):
self.search = search
self.file_path = []
и добавить file_path
в список
self.file_path.append(file_path)
Теперь вы можете распечатать все пути
def out(self):
for path in self.file_path:
print(path)