使用这些属性可以对C代码中定义的Python对象进行自省。的C-API参数诊所提供数据,以协助inspect
建立时模块Signature
的对象。以前不支持对C-API函数的自省。
有关如何使用该值,请参见内部inspect._signature_fromstr()
函数__text_signature__
。
当前,该__text_signature__
属性是根据C- API中对象上的内部文档字符串集填充的;对进行了简单的文本搜索objectname(...)\n--\n\n
,其中\n--\n\n
典型的是Attribute Clinic生成的文档字符串。如果要查找一些示例,请查看type
对象插槽。或者,您可以查看audioop
模块源代码,以了解如何使用Argument Clinic定义签名。该参数诊所脚本正在建设时产生的文档字符串(在所附的那些运行audioop.c.h
文件)。
该__signature__
属性(如果存在)将是一个inspect.Signature()
对象;代替提供文本版本,C-API可以提供完全解析的Signature
实例。