【问题标题】:Docstrings in C extensions to Python?Python C 扩展中的文档字符串?
【发布时间】:2011-09-09 16:31:29
【问题描述】:

在创建 Python 的 C 扩展时,是否有可能以某种方式编写以 docstrings 形式向扩展用户公开的 cmets?

【问题讨论】:

  • 您可能已经意识到这一点,但如果没有:您可能想要调查 Cython。您编写 Python 风格的代码,添加一些类型声明,然后将其翻译为 C 并编译。

标签: python cpython python-c-extension


【解决方案1】:

types 的文档字符串可以作为tp_doc 成员包含在PyTypeObject 结构中,请参阅an example in the docs

函数的文档字符串可以包含在module's method tableml_doc 字段中。如果您希望您的文档字符串“物理上接近”实际函数,您可以在方法表中引用的函数定义上方包含字符串常量。

方法的文档字符串可以分配给type's member table中的doc字段。

模块的文档字符串可以作为参数传递给Py_InitModule3()Py_InitModule4() 函数。


更新:Python3 不支持Py_InitModule3(),方法已替换为PyModule_Create()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-07-12
    • 1970-01-01
    • 2015-08-29
    • 1970-01-01
    • 2018-05-26
    • 2010-11-09
    • 1970-01-01
    • 2020-08-23
    相关资源
    最近更新 更多