我的目标是解析一个类并返回一个数据结构(对象,字典等),它描述了类中包含的方法和相关参数.类型和回报的奖励积分......
要求:必须是Python
例如,以下类:
class Foo:
def bar(hello=None):
return hello
def baz(world=None):
return baz
Run Code Online (Sandbox Code Playgroud)
将被解析返回
result = {class:"Foo",
methods: [{name: "bar", params:["hello"]},
{name: "baz", params:["world"]}]}
Run Code Online (Sandbox Code Playgroud)
所以这只是我正在思考的一个例子......我对数据结构非常灵活.
关于如何实现这一点的任何想法/例子?
您可能想查看Python的检查模块.它会让你大部分时间到达那里:
>>> class Foo:
... def bar(hello=None):
... return hello
... def baz(world=None):
... return baz
...
>>> import inspect
>>> members = inspect.getmembers(Foo)
>>> print members
[('__doc__', None), ('__module__', '__main__'), ('bar', <unbound method Foo.bar>
), ('baz', <unbound method Foo.baz>)]
>>> inspect.getargspec(members[2][1])
(['hello'], None, None, (None,))
>>> inspect.getargspec(members[3][1])
(['world'], None, None, (None,))
Run Code Online (Sandbox Code Playgroud)
这不是您想要的语法,但在阅读文档时,该部分应该相当直接.
| 归档时间: |
|
| 查看次数: |
145 次 |
| 最近记录: |