Python 提供了多种框架和库来编写前端页面,下面是一些流行的选项:
Pynecone
使用 Pynecone 可以通过 Python 代码创建交互式前端页面。
需要先安装 Node.js,因为 Pynecone 是基于 JavaScript 的。
Dash
Dash 是一个基于 Flask、Plotly 和 React 的框架,允许使用纯 Python 编写前端页面。
例子:
import dashfrom dash import dcc, htmlapp = dash.Dash(__name__)app.layout = html.Div(children=[html.H1(children='Hello Dash'),dcc.Graph(id='example-graph',figure={'data': [{'x': [1, 2, 3], 'y': [4, 1, 2], 'type': 'bar', 'name': 'SF'},{'x': [1, 2, 3], 'y': [2, 4, 5], 'type': 'bar', 'name': 'Montréal'},],'layout': {'title': 'Dash Data Visualization'}})])if __name__ == '__main__':app.run_server(debug=True)
Streamlit
Streamlit 是一个为机器学习和数据科学设计的开源应用框架。
例子:
import streamlit as stimport pandas as pdimport numpy as npst.title('简单的 Streamlit 应用')st.write('这是一个快速创建数据应用的示例。')data = pd.DataFrame(np.random.randn(10, 2), columns=['x', 'y'])st.line_chart(data)user_input = st.text_input('请输入一些文本:')st.write('你输入的内容是:', user_input)

NiceGUI
NiceGUI 是一个轻量级的 Python Web 框架,可以快速创建带有按钮和输入框的 Web 应用。
例子:
from nicegui import uidef on_button_click():ui.notify('你点我了!')ui.button('点我', on_click=on_button_click)ui.run()
Flask
Flask 是一个轻量级 Web 框架,可以配合模板引擎(如 Jinja2)来渲染 HTML 页面。
例子:
from flask import Flask, render_templateapp = Flask(__name__)@app.route('/')def index():return render_template('index.html')
Brython
Brython 允许在浏览器中运行 Python 代码,可以用来创建交互式前端应用。
例子:
Hello, Brython!
