Python 脚本和模块之间同步文档字符串

问题描述 投票:0回答:1

我正在制作一个可以作为模块运行的脚本,并且想要在它们之间同步文档字符串,我该怎么做。

在此示例中,我希望所有不同的文档字符串都来自一个地方,以便将来的编辑无需担心保持描述彼此内联。

(注意:argparse是一个用于解析命令行参数的内置Python库,这里唯一重要的部分是它存在并且需要描述)

#!/usr/bin/env python3
"""
My long description
"""

import argparse

program_description = """My long description"""

def main():
    """
    My long description
    """

if __name__ == "__main__":
    main()
    argparse.ArgumentParser(description=program_description)

如何减少文档字符串的重复,以便在更改描述时不需要更改 3 个位置? (如果可以减少到2次,如果没有提供1次重复的答案,我仍然会接受答案)

python python-3.x
1个回答
0
投票

试试这个:

# Store description in a variable
program_description = "your description here"

# Set docstring for the module
__doc__ = program_description

def main():
    # Set docstring for the function
    main.__doc__ = program_description

if __name__ == "__main__"'
    main()
    parser = argparse.ArgumentParser(description = program_descrition)
© www.soinside.com 2019 - 2024. All rights reserved.