allpy
view allpy/util.py @ 1088:c1091715f8a3
Added allpy.util.Silence to faciliate running most code with as little noise as possible
This class is intended for use around noisy chunks of code using `with`, e.g.::
with Silence():
structure = PDBParser().load_pdb(file)
This will produce no output to stderr if no exceptions are raised in the code.
Otherwise, all output will be printed as if the code was run without this
wrapper. See docstrings for more documentation.
author | Daniil Alexeyevsky <dendik@kodomo.fbb.msu.ru> |
---|---|
date | Fri, 01 Jun 2012 13:43:02 +0400 |
parents | a3e439d09322 |
children | bc1a7595d9d1 |
line source
1 """Miscellanous utilities.
2 """
10 """The oppozite of zip() builtin."""
18 """Open file. Return stdin/stdout for filename '-'."""
29 """Remove each of substrings from string."""
35 """Clone of dict that user may add attributes to."""
36 pass
39 """Clone of list that user may add attributes to."""
40 pass
43 """Clone of str that user may add attributes to."""
44 pass
47 """Warn about function being deprecated."""
51 """Context manager for use with `with`.
53 Run code in context without any message to the screen, but show all output
54 that was there if an error occured. E.g.::
56 with Silence():
57 structure = PDBParser().get_structure(name, file)
59 There are two mutually exclusive ways of silencing:
61 1. By replacing OS'es stdout/stderr with tempfile (called `dup`)
62 2. By replacing python's sys.stdout/sys.stderr with StringIO (`hide`)
64 For each of ways you may specify values: 'stdout', 'stderr' or 'both'.
65 E.g::
67 with Silence(dup="both"):
68 check_call(["mucle", alignment])
70 `Silence()` is equivalent to `Silence(hide='stderr')`
71 """
127 # vim: set et ts=4 sts=4 sw=4: