On 2010-05-19 07:34:37 -0700, Steven D'Aprano said:
# Untested.
def verbose_print(arg, level, verbosity=1):
if level <= verbosity:
print arg
def my_function(arg):
my_print(arg, level=2)
return arg.upper()
if __name__ == '__main__':
if '--verbose' in sys.argv:
my_print = functools.partial(verbose_print, verbosity=2)
elif '--quiet' in sys.argv:
my_print = functools.partial(verbose_print, verbosity=0)
my_function("hello world")
Note that although there is no verbosity global setting, every function
that calls my_print will do the right thing (unless I've got the test
backwards...), and if a function needs to override the implicit verbosity
setting, it can just call verbose_print directly.
--
http://mail.python.org/mailman/listinfo/python-list