A tool for recursively exploring arbitrary python objects.
Project description
pynaunt allows you to deeply explore and introspect arbitrary python objects.
As an example, we explore the os module just a bit:
>>> from pynaut import Object >>> import os >>> obj = Object(os) >>> len(obj.children) 220 >>> pairs = obj.grep_attr_names('wait') >>> len(pairs) 12 >>> pairs [('wait', <Object(<built-in function wait>) >), ('wait4', <Object(<built-in function wait4>) >), ('wait3', <Object(<built-in function wait3>) >), ('wait', <Object(<built-in function wait>) >), ('wait4', <Object(<built-in function wait4>) >), ('wait3', <Object(<built-in function wait3>) >), ('waitpid', <Object(<built-in function waitpid>) >), ('wait', <Object(<built-in function wait>) >), ('wait4', <Object(<built-in function wait4>) >), ('wait3', <Object(<built-in function wait3>) >), ('waitpid', <Object(<built-in function waitpid>) >), ('waitpid', <Object(<built-in function waitpid>)>)] >>> obj = obj.children['path'] >>> obj = obj.children['os'] >>> list(obj.ancestry) [<Object(<module 'posixpath' from '/Users/miburr/virtualenv/current/lib/python2.7/posixpath.pyc'>) >, <Object(<module 'os' from '/Users/miburr/virtualenv/current/lib/python2.7/os.pyc'>) >] >>>
Additionally, there is support for searching an entire object tree for a (name, attribute) pair that meets an arbitrary condition.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pynaut-0.2.2.zip
(7.5 kB
view details)
File details
Details for the file pynaut-0.2.2.zip
.
File metadata
- Download URL: pynaut-0.2.2.zip
- Upload date:
- Size: 7.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 62653b68ea85236792fa6dbab9b82997bca8f428c34fd59a29eca8be4431d0fc |
|
MD5 | 46b8c509e7c04cd0b781b9ebf9ae7b1f |
|
BLAKE2b-256 | e342de22b0a5e2c6a50896269aa8d1dd61a4ffa00c689e26bdf53bd22cdf60a6 |