On Jul 28, 2004, at 12:09 AM, Fernando Perez wrote: > Jeff Epler wrote: > >> In 2.3, __all__ = ["iskeyword", "kwlist"] >> >> In the absence of separate documentation, I think __all__ may be the >> best hint you have about what the "external API" of a module is. > > Indeed, lesson learned. In my slim defense, seeing in help(keyword): > > DATA > __all__ = ['iskeyword', 'kwlist'] > keyword = 'yield' > kwdict = {'and': 1, 'assert': 1, 'break': 1, 'class': 1, > 'continue': 1... > kwlist = ['and', 'assert', 'break', 'class', 'continue', 'def', > 'del',... > > I (mistakenly) assumed kwdict was safe for usage. Relying on help(), > while I > acknowledge may have been mistaken, is not IMHO a completely > farfetched error. > Oh well, live and learn :) > > Thanks to all for the clarifications. I'll be far more careful in the > future > with my usage of stuff from the stdlib. FWIW, I think I've made the same mistake before for the same reasons. This sounds like a bug in pydoc. If __all__ is defined, help should probably only be given for items in it (public API). -bob -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 3589 bytes Desc: not available Url : http://mail.python.org/pipermail/python-dev/attachments/20040728/53ebb933/smime.bin
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