Forgetting "()" when calling methods
A. Lloyd Flanagan
alloydflanagan at attbi.com
Wed Apr 30 16:53:26 CEST 2003
Roy Smith <roy at panix.com> wrote in message news:<roy-D5BE38.18462125042003 at reader1.panix.com>...
> Erik Max Francis <max at alcyone.com> wrote:
> > One thing that PyChecker, at least, is more likely to catch is "code has
> > no effect" statements like
> > sys.exit
> > Without the parentheses, this clearly can't do anything useful
> In a language as dynamic as Python, you have to be really careful with
> words like "clearly".
> Invoking the name of an object to see if you raise a NameError could be
> useful in some situations. Within the past week or so, there was a
> serious discussion on this group where code along the lines of:
> except NameError:
> do stuff
> was suggested as a way to tell if the version of Python being run had
> boolean support.
Just an FYI: pychecker does indeed flag code like that as having 'no
effect', including the boolean test. Very useful if you call a
function as a statement and forget the parentheses, easy to ignore if
you meant to do it.
More information about the Python-list