Skuteczne usuwanie podkatalogów w nazwach z os.walk
Na Macu w Pythonie 2.7 podczas przechodzenia przez katalogi za pomocą os.walk mój skrypt przechodzi przez „aplikacje”, np. Appname.app, ponieważ są to naprawdę same katalogi. Później w trakcie przetwarzania trafiam na błędy podczas ich przeglądania. I tak nie chcę ich przeglądać, więc dla moich celów najlepiej byłoby zignorować te typy „katalogów”.
Więc to jest moje obecne rozwiązanie:
for root, subdirs, files in os.walk(directory, True):
for subdir in subdirs:
if '.' in subdir:
subdirs.remove(subdir)
#do more stuff
Jak widać, druga pętla for będzie uruchamiana dla każdej iteracji podkatalogów, co nie jest konieczne, ponieważ pierwsze przejście i tak usuwa wszystko, co chcę usunąć.
Musi to być skuteczniejszy sposób. Jakieś pomysły?