[Python-Dev] Re: __pycode__ extension
Fernando Perez
fperez528 at yahoo.com
Wed Nov 17 20:56:56 CET 2004
Phillip J. Eby wrote:
> If the idea is just to allow saving code from interactive mode, why not
> just modify the interactive mode to do this?
IPython already has most of this:
In [3]: os.path.walk??
Type: function
Base Class: <type 'function'>
String Form: <function walk at 0x550529cc>
Namespace: Interactive
File: /usr/src/build/394694-i386/install/usr/lib/python2.3/posixpath.py
Definition: os.path.walk(top, func, arg)
Source:
def walk(top, func, arg):
"""Directory tree walk with callback function.
For each directory in the directory tree rooted at top (including top
itself, but excluding '.' and '..'), call func(arg, dirname, fnames).
dirname is the name of the directory, and fnames a list of the names of
the files and subdirectories in dirname (excluding '.' and '..'). func
may modify the fnames list in-place (e.g. via del or slice assignment),
and walk will only recurse into the subdirectories whose names remain in
fnames; this can be used to implement a filter, or to impose a specific
order of visiting. No semantics are defined for, or required of, arg,
beyond that arg is always passed to func. It can be used, e.g., to pass
a filename pattern, or a mutable object designed to accumulate
statistics. Passing None for arg is common."""
try:
names = os.listdir(top)
except os.error:
return
func(arg, top, names)
for name in names:
name = join(top, name)
try:
st = os.lstat(name)
except os.error:
continue
if stat.S_ISDIR(st.st_mode):
walk(name, func, arg)
Since it's already available (anyone can copy the code if they want, it's BSD),
I am very weary of the bloat this would introduce if it were a default
feature. So I'd like to see a good argument about the footprint increase of
this proposal.
Best,
f
More information about the Python-Dev
mailing list