在 python 文件中插入文档字符串属性

我们正在为 python 模块使用拿破仑风格的文档字符串。但是需要在调用的文档字符串中自动填充附加属性Data Owner,DAL Owner以便给定的函数如下所示:


def func(self, arg1=None, arg2=None):

"""

Returns the timeseries for the specified arg1 and arg2.

Args:

    arg1: argument 1

    arg2: argument 2

Returns:

    DataFrame containing timeseries of arg1 for arg2.


DAL Owner: Team IT

Data Owner: Team A

"""

给定函数的这些附加属性及其值在单独的 csv 文件中提供。我的想法是有一个脚本(awk,sed?)

  • 提取给定 python 文件中的所有函数名称。可以在python中轻松完成

  • 对于这些函数名称,请检查 csv 文件中是否存在所有者,如果存在,则创建函数名称和所有者的映射。可行

现在,这是我还没有弄清楚并且不知道最好的前进方式的部分。对于给定的函数名称和所有者,我需要返回 python 文件并将所有者添加到文档字符串(如果存在)。我在想某种 awk 脚本,但不太确定

  • 找到与模式匹配的函数

  • 对于那个模式,看看doctsring是否存在,右括号后加三引号

  • 如果 docstring 存在,则在结束三重引号之前为所有者添加额外的两行

  • 如果 docstring 不存在,则在函数声明后的行上的三边形引号之间插入所有者的两行。

我知道这是很多步骤,但任何人都可以提供前 4 个要点的见解,以在给定函数、属性和 python 文件的情况下将附加属性插入到文档字符串中。像 sed、awk 这样的 linux 实用程序会更有用还是我应该走 python 路线。有没有其他更容易实现的选项。


心有法竹
浏览 245回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python