python的flask框架例子
时间: 2023-08-13 21:26:54 浏览: 32
好的,以下是一个简单的 Flask 示例:
```python
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return "Hello, World!"
if __name__ == '__main__':
app.run()
```
这段代码创建了一个 Flask 应用程序并为其定义了一个路由。当用户访问根路径('/')时,应用程序将返回“Hello, World!”这个字符串。最后,`app.run()` 启动了应用程序并监听来自客户端的请求。
相关问题
python flask 开发框架 pdf
Python Flask 是一个轻量级的 Web 开发框架,它提供了快速搭建 Web 应用的能力。在 Flask 中,我们可以使用第三方库来生成 PDF 文件,比如使用 ReportLab 或者 WeasyPrint。这些库可以帮助我们在 Flask 应用中生成高质量的 PDF 文件。
首先,我们需要在 Flask 项目中安装相应的生成 PDF 的库。比如,如果选择使用 ReportLab,我们可以使用 pip 命令安装:
```
pip install reportlab
```
然后,在 Flask 的视图函数中,我们可以使用这些库来生成 PDF。比如,我们可以使用 ReportLab 来创建一个 PDF 文件并将其返回给客户端:
```python
from reportlab.pdfgen import canvas
from flask import make_response
from io import BytesIO
@app.route('/generate_pdf', methods=['GET'])
def generate_pdf():
buffer = BytesIO()
pdf = canvas.Canvas(buffer)
pdf.drawString(100, 100, "Hello, World!")
pdf.showPage()
pdf.save()
buffer.seek(0)
response = make_response(buffer.getvalue())
response.headers['Content-Type'] = 'application/pdf'
response.headers['Content-Disposition'] = 'attachment; filename=hello.pdf'
return response
```
在这个例子中,我们创建了一个视图函数来生成 PDF 文件。首先,我们创建了一个 BytesIO 缓冲区,并使用 ReportLab 创建了一个 PDF 文件。然后,我们使用 Flask 的 make_response 函数将 PDF 文件返回给客户端。
总之,通过使用第三方库,我们可以在 Python Flask 中快速开发生成 PDF 的功能,满足项目的需求。
Python Flask异步处理任务例子
好的,这是一个Python Flask异步处理任务的例子:
```
from flask import Flask, jsonify
from concurrent.futures import ThreadPoolExecutor
app = Flask(__name__)
executor = ThreadPoolExecutor(2)
@app.route('/async')
def async_task():
future = executor.submit(my_long_task)
return jsonify(task_id=future)
def my_long_task():
# simulate a long task
time.sleep(10)
return {'result': 'task completed'}
if __name__ == '__main__':
app.run(debug=True)
```
在这个例子中,我们使用Flask框架创建一个Web应用程序。当用户访问`/async`路径时,我们会启动一个异步长任务,使用线程池进行处理,并返回一个任务标识符。任务完成后,可以通过查询任务标识符来获取任务结果。通过这种方式,我们可以确保Web应用程序不会因为长任务而阻塞,提高了并发处理能力。