From 919a3b40f9753aa7a9ce8efee9fad04919dd2929 Mon Sep 17 00:00:00 2001 From: Tim Peters Date: Mon, 22 Nov 2004 16:49:02 +0000 Subject: [PATCH] SF bug 1071087: os.walk example for deleting a full tree is sometime wrong. Clarify that the example assumes no links are present; the point of the example is to illustrate a need for topdown=False, not to wrestle with platform-dependent link convolutions. Also spell os.path.join() out in full, instead of using a shortcut import. The bug reporter was confused by that too, and it's clearer this way. Bugfix candidate; but I don't intend to backport it. --- Doc/lib/libos.tex | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Doc/lib/libos.tex b/Doc/lib/libos.tex index 704b05763c4..91923c443ad 100644 --- a/Doc/lib/libos.tex +++ b/Doc/lib/libos.tex @@ -1185,16 +1185,16 @@ In the next example, walking the tree bottom up is essential: directory is empty: \begin{verbatim} -import os -from os.path import join -# Delete everything reachable from the directory named in 'top'. +# Delete everything reachable from the directory named in 'top', +# assuming there are no symbolic links. # CAUTION: This is dangerous! For example, if top == '/', it # could delete all your disk files. +import os for root, dirs, files in os.walk(top, topdown=False): for name in files: - os.remove(join(root, name)) + os.remove(os.path.join(root, name)) for name in dirs: - os.rmdir(join(root, name)) + os.rmdir(os.path.join(root, name)) \end{verbatim} \versionadded{2.3}