是否可以使用问答提示让 python 输出具有特定格式的整个文档?

Is it possible to have python output whole documents with specific formats using a question-answer prompt?

python是否可以输出特定格式的整个文档?我可以让它通过 question/answer 提示符来执行此操作吗?这是我希望它执行的操作的示例。

假设我想创建一个关于风暴分析的文档。我想开始一个“脚本”,其中 Python 会问我一些问题,例如:

所以我希望它为我的完整文档“问”我所有这些问题,然后以我想要的格式输出它,比如 pdf 或 word 文档。这是一个旧格式的示例(我可能没有明确想要这个,但这只是一个通用示例,我希望能够编程为 Python):

python可以做这种事情吗?还是最好留给另一个程序?

一种非常常见的方法是使用 flask/jinja 之类的东西来创建 html 文档。从那里您可以使用其他工具将页面转换为 pdf/image/whatever。

项目结构如

-app.py
-templates
    -template.html

您可以编写以下内容来生成报告:

app.py:

from flask import Flask, render_template

app = Flask(__name__)

if __name__ == "__main__":
    user_input = input("Type a message")
    with app.app_context():
        with open("example.html", "w") as f:
            f.write(render_template("template.html", message=user_input))

template.html:

<html>
    <head>
        <title>Jinja Test</title>
    </head>
    <body>
        <span>{{ message }}</span>
    </body>
</html>

当您输入消息时,例如说“hi”,example.html 中的 html 页面将生成如下所示:

<html>
    <head>
        <title>Jinja Test</title>
    </head>
    <body>
        <span>hi</span>
    </body>
</html>

因此,您可以结合使用 html/css 和输入来使用它来自定义您想要的任何报告。