Effizientes Entfernen von Unterverzeichnissen in Verzeichnissen aus os.walk

Auf einem Mac in Python 2.7 durchläuft mein Skript beim Durchlaufen von Verzeichnissen mit os.walk 'apps', d. H. Appname.app, da dies eigentlich nur Verzeichnisse von sich selbst sind. Gut später in der Verarbeitung stoße ich auf Fehler, wenn ich sie durcharbeite. Ich möchte sie sowieso nicht durchgehen, daher ist es für meine Zwecke am besten, diese Arten von "Verzeichnissen" einfach zu ignorieren.

Das ist also meine aktuelle Lösung:

for root, subdirs, files in os.walk(directory, True):
    for subdir in subdirs:
        if '.' in subdir:
            subdirs.remove(subdir)
    #do more stuff

Wie Sie sehen, wird die zweite for-Schleife für jede Iteration von Unterverzeichnissen ausgeführt, was unnötig ist, da der erste Durchgang alles entfernt, was ich sowieso entfernen möchte.

Dafür muss es einen effizienteren Weg geben. Irgendwelche Ideen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage