Prints function calls of the Python program
Project description
# PyTracer
Prints function calls of the Python program.
```console
$ cat example.py
def f(a):
return g(a, "20")
def g(a, b):
return b, a
f(10)
$ pytracer example.py
>example.<module>()
>example.f(10)
>example.g(10, '20') = ('20', 10)
<example.f(10) = ('20', 10)
<example.<module>() = None
```
## Installing ##
`pip install pytracer`
## Usage ##
pytracer.py [-h] [-s S] [-i I] [-f F] filename ...
positional arguments:
filename a name of the Python program
optional arguments:
-h, --help show this help message and exit
-s S max argument length to print (the default is 32)
-i I modules to ignore (comma delimited, the default is
re,glob,random,codecs,argparse)
-f F modules to focus at (comma delimited)
## Advanced Usage ##
If you want to trace a single function just add the trace() decorator. Also it is possible to ignore not interesting subcalls:
```python
import pytracer
@pytracer.no_trace()
def g():
return 42
@pytracer.trace()
def f():
return g()
f()
```
The module also can be used as a context manager:
```python
import pytracer
def f():
return 42
with pytracer.trace():
f()
```
Prints function calls of the Python program.
```console
$ cat example.py
def f(a):
return g(a, "20")
def g(a, b):
return b, a
f(10)
$ pytracer example.py
>example.<module>()
>example.f(10)
>example.g(10, '20') = ('20', 10)
<example.f(10) = ('20', 10)
<example.<module>() = None
```
## Installing ##
`pip install pytracer`
## Usage ##
pytracer.py [-h] [-s S] [-i I] [-f F] filename ...
positional arguments:
filename a name of the Python program
optional arguments:
-h, --help show this help message and exit
-s S max argument length to print (the default is 32)
-i I modules to ignore (comma delimited, the default is
re,glob,random,codecs,argparse)
-f F modules to focus at (comma delimited)
## Advanced Usage ##
If you want to trace a single function just add the trace() decorator. Also it is possible to ignore not interesting subcalls:
```python
import pytracer
@pytracer.no_trace()
def g():
return 42
@pytracer.trace()
def f():
return g()
f()
```
The module also can be used as a context manager:
```python
import pytracer
def f():
return 42
with pytracer.trace():
f()
```
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
pytracer-0.0.4.tar.gz
(4.7 kB
view details)
File details
Details for the file pytracer-0.0.4.tar.gz
.
File metadata
- Download URL: pytracer-0.0.4.tar.gz
- Upload date:
- Size: 4.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5bd85a8a5a91c3da725d6fcda50ef9cad7ee3d0b988ba247b4c40c98e11ceaf1 |
|
MD5 | d7740daeb2e93a002c642607c1208f05 |
|
BLAKE2b-256 | edfff4816f9fc960e466053d70aa1d76e1cb3628ceddee858f439754e882bf35 |