跳转到主要内容

递归探索任意Python对象的工具。

项目描述

pynaunt 允许您深入探索和检查任意Python对象。

例如,我们可以探索一下 os 模块

>>> from pynaut import Container
>>> import os
>>> obj = Container(os)
>>> len(list(obj.children))
203
>>> w = list(obj.grep_attr_names('wait'))
>>> len(w)
23
>>> [a.name for a in w]
['wait',
  'wait4',
  'wait3',
  'wait',
  'wait4',
  'wait3',
  'waitpid',
  'wait',
  'wait4',
  'wait3',
  'waitpid',
  'wait',
  'wait4',
  'wait3',
  'wait',
  'wait4',
  'wait3',
  'waitpid',
  'waitpid',
  'waitpid',
  'waitget',
  'waitget',
  'waitget']
>>> from types import ModuleType
>>> test = lambda c: isinstance(c.obj, (bool, list, ModuleType))
>>> foo = list(obj.get_attr_matches(test))
>>> len(foo)
620
>>> [a.name for a in foo][:10]
['UserDict',
  'errno',
  'path',
  'auto_magic',
  'genericpath',
  'stat',
  'os',
  'UserDict',
  'errno',
  'path']

此外,还支持在整个对象树中搜索满足任意条件的(名称,属性)对。

pynaut 还包括一个基于curses的非常基本的界面( pynaut_curses ),允许您通过遍历属性树来探索对象。

项目详情


下载文件

下载适合您平台的文件。如果您不确定要选择哪个,请了解更多关于 安装软件包 的信息。

源分布

pynaut-0.2.13.zip (14.7 kB 查看哈希值)

上传于

支持者