如何从reStructuredText获取属性类型? 我有类似的东西。
@property
def port(self):
"""Get port.
:return: port
:rtype: str
"""
return self._port
我如何获得属性类型(str)?
答案 0 :(得分:1)
代码碎片是你的吗?如果是,您可以使用您喜欢的任何机制,例如直接向函数添加属性以供以后检查:SomeClass.port.fget.return_type = int
。尝试一下,它有效。只需要小心通过类限定属性,而不是通过实例(或在实例上使用.__class__
)。
如果没有,请parse port.__doc__
并提取相关字段。
如果您受CPU限制,您仍然可以使用例如没有ORM层的SQLAlchemy。它可以提前从表格模型生成非常高效的SQL,,例如在启动期间。然后你只需用正确的参数调用它们,花费相当少的CPU时间。在大多数情况下,DB往返使得查询创建和结果解码相形见绌。
同样适用于解析RST:您可以提前完成,例如:作为构建步骤,并将信息存储在易于解析的文件中,例如, JSON甚至是腌制的Python数据,并快速加载为启动。