我们正在为 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 路线。有没有其他更容易实现的选项。
相关分类