Skip to main content

Pretty inspect object

Project description

Pretty inspect

Build Status Coverage Status Documentation Status

Inspired by the complexity of Neo.

When browsing/inspecting an object, you want to collect all methods and attributes that match the key.

Example

Browsing the documentation of neo.io.BlackrockIO and looking for the ways of extracting Epochs, you found read_epoch() method. But calling this method raises AssertionError. You need to go deeper.

  1. Run pip install pinspect neo
  2. Download BlackRock sampledata.zip
wget http://www.blackrockmicro.com/wp-content/software/sampledata.zip
unzip sampledata.zip
  1. In python,
from neo.io import BlackrockIO
from pinspect import find

session = BlackrockIO('sampleData')
graph = find(session, 'epoch', verbose=True)

Output:

BlackrockIO.rescale_epoch_duration() -> 'TypeError'
BlackrockIO.read_epoch() -> 'AssertionError'
BlackrockIO._rescale_epoch_duration() -> 'TypeError'
BlackrockIO.read()[0].segments[0].epochs -> 'list of size 0'
BlackrockIO.read()[0].segments[0].events[0].to_epoch() -> 'Epoch'

The last two lines are candidates to explore manually.

Graph visualization

You can pass visualize=True and enjoy the beautiful networkx with pyvis interacting graph rendering. Hover over the nodes (objects) and edges (methods and attributes) to explore the graph in details and inspect how a particular object has been generated.

Unfiltered graph

Below is the full unfiltered graph of neo.BlackRockIO of all possible method and attribute calls. Can you find the green dot?

Requirements

  1. Python 3.6+
  2. requirements.txt

Alternative

Another package to inspect python variables is objbrowser.

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

pinspect-0.0.2.tar.gz (8.1 kB view details)

Uploaded Source

Built Distribution

pinspect-0.0.2-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file pinspect-0.0.2.tar.gz.

File metadata

  • Download URL: pinspect-0.0.2.tar.gz
  • Upload date:
  • Size: 8.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0.post20191030 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.7.5

File hashes

Hashes for pinspect-0.0.2.tar.gz
Algorithm Hash digest
SHA256 d96c3a95e17122d43f3a183f43200673e64a8c4e35562c4b40ad5433daad9000
MD5 9cf38fb9e27b0acf71c7b4402bdabdf1
BLAKE2b-256 5d3252d267a38c92771f27406d6f5080837844fbb7cddacfc28a61360edb7f48

See more details on using hashes here.

File details

Details for the file pinspect-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: pinspect-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 8.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0.post20191030 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.7.5

File hashes

Hashes for pinspect-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0e485ed244cb11b29b01832dc5c180916c720b17c3ad3472f2a822fa11bdc903
MD5 8d2e267dd93a937857bd5e08dc8dee24
BLAKE2b-256 cf5a0fa37c325b5dcd760c4d37ab3fe5e36e42a5a442231d033241b623c3bebf

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page