From 8b7beb631bd34bbc7d17e8f7e7256ee076a3e381 Mon Sep 17 00:00:00 2001 From: Tim Peters Date: Sat, 26 Apr 2003 00:53:24 +0000 Subject: Use os.walk() to find files to delete. --- PCbuild/rmpyc.py | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/PCbuild/rmpyc.py b/PCbuild/rmpyc.py index 019c69b..43c8576 100644 --- a/PCbuild/rmpyc.py +++ b/PCbuild/rmpyc.py @@ -1,23 +1,24 @@ # Remove all the .pyc and .pyo files under ../Lib. + def deltree(root): import os - def rm(path): - os.unlink(path) + from os.path import join + npyc = npyo = 0 - dirs = [root] - while dirs: - dir = dirs.pop() - for short in os.listdir(dir): - full = os.path.join(dir, short) - if os.path.isdir(full): - dirs.append(full) - elif short.endswith(".pyc"): + for root, dirs, files in os.walk(root): + for name in files: + delete = False + if name.endswith('.pyc'): + delete = True npyc += 1 - rm(full) - elif short.endswith(".pyo"): + elif name.endswith('.pyo'): + delete = True npyo += 1 - rm(full) + + if delete: + os.remove(join(root, name)) + return npyc, npyo npyc, npyo = deltree("../Lib") -- cgit v0.12