Допустим, я хочу предоставить альтернативу для поля поиска Windows (которое открывается, когда вы нажимаете клавишу Windows
и начинаете печатать). Цель состоит в том, чтобы иметь поле ввода, в котором я набираю имя файла или папки и получаю список всех соответствующих файлов / папок.
Я попытался реализовать это в Python, используяos.walk
:
import os
search = "data"
result = []
for dirpath, subdirs, files in os.walk("/"):
if search in os.path.basename(dirpath):
result.append(dirpath)
for file in files:
if search in file:
result.append(file)
return result
К сожалению, поиск файлов и папок во всей файловой системе занимает очень много времени.
Использование FindFiles из win32api кажется быстрее, но я могу заставить его искать только в каталоге, где выполняется скрипт Python и без поиска во вложенных папках.
Я нашел пример о том, как выполнять рекурсивный поиск по всем подключенным дискам с помощью win32api на C ++, и мне было интересно: есть ли уже расширение C / C ++ для Python, реализующее такой поиск?
Или вы можете придумать способ достиженияэто по-другому с помощью Python?