On Thu, 11 Jan 2001 11:11:23 -0600 (CST), Skip Montanaro <skip@mojam.com> wrote: > > I know Guido has said he doesn't want to fiddle with dir(), but my sense of > things from the overall discussion of the __exports__ concept tells me that > when used interactively dir() often presents confusing output for new Python > users. > > I twiddled CGIHTTPServer to have __all__ and added the following dir() > function to my PYTHONSTARTUP file: > > def dir(o,showall=0): > if not showall and hasattr(o, "__all__"): > x = list(o.__all__) > x.sort() > return x > from __builtin__ import dir as d > return d(o) > > Compare its output with and without showall set: > > >>> dir(CGIHTTPServer) > ['CGIHTTPRequestHandler', 'test'] > >>> dir(CGIHTTPServer,1) > ['BaseHTTPServer', 'CGIHTTPRequestHandler', 'SimpleHTTPServer', '__all__', > '__builtins__', '__doc__', '__file__', '__name__', '__version__', > 'executable', 'nobody', 'nobody_uid', 'os', 'string', 'sys', 'test', > 'urllib'] > > I haven't demonstrated any great programming prowess with this little > function, but I rather suspect it may be beyond most brand new users. If > Guido can't be convinced to allow dir() to change, how about adding a sample > PYTHONSTARTUP file to the distribution that contains little bits like this > and Ping's pydoc.help stuff (assuming it gets into the distro, which I hope > it does)? And, while we're at it, the following bit too can be in the PYTHONSTARTUP: def display(x): import __builtin__ __builtin__._ = None if type(x) == type(''): print `x` else: print x __built__._ = x import sys sys.displayhook = display -- Moshe Zadka <sig@zadka.site.co.il> This is a signature anti-virus. Please stop the spread of signature viruses!
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4