Switch from print to debugger() and never look back!
Project description
Switch from print to debugger() and never look back.
import debug debugger() # <-- breaks here
Import this module in your main file to add debugger as a builtin command.
Documentation
All functions
debugger() debugger.enable() debugger.disable() debug.wrap(function) debug.sample(function) function.samples
Calling debugger opens the ipdb debugger,
import debug debugger() # <-- breaks here
Calling debugger.disable from the ipdb prompt disables all breakpoints,
import debug debugger() # <-- breaks here # >> debugger.disable() # >> continue debugger() # <-- does not break here
Using debug.wrap sets a function breakpoint,
def fun(): pass def example(): fun() fun = debug.wrap(fun) example() # <-- breaks above at definition of fun
Using debug.sample collects function arguments,
def fun(a, b=None): return fun = debug.sample(fun) fun(23) fun(42, 'hello worlds') debugger() # <-- breaks here # >> len(fun.samples) # 2 # >> fun.samples # [{0: 23, '$': 529}, {0: 42, 'b': 'hello worlds', '$': 1764}]
Using debug.log collects values,
for each in range(3): debug.log(each) debugger() # <-- breaks here # >> debugger.logs # {'example.py': {2: [0, 1, 2]}}
Installation
To install this package, run
pip install print-considered-harmful
Contributing
Bug reports and pull requests are welcome on github at, https://github.com/akuhn/print-considered-harmful
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Close
Hashes for print-considered-harmful-1.4.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 894e681847f8b63531c05c4844366019d5e7e8df9d442898e5e20fbe8f440eaa |
|
MD5 | de4d7c05fd9f536818cff8ae2cbd74d3 |
|
BLAKE2b-256 | 873ea2943e57e7f02273632d4dd1bb816bf63e7f4526f025942715af9e7d5f7a |