当前位置: 首页 > wzjs >正文

网站适合移动端乐清做手机网站

网站适合移动端,乐清做手机网站,移动应用开发专业就业前景,网页设计与制作大赛Python Flask 框架学习笔记 一、Flask 框架简介 Flask 是一个使用 Python 编写的轻量级 Web 应用框架,它被称为 “微框架”,因为它不强制使用特定的数据库、模板引擎或其他工具,开发者可以根据项目需求自由选择和集成外部库。Flask 框架基于…

Python Flask 框架学习笔记

一、Flask 框架简介

Flask 是一个使用 Python 编写的轻量级 Web 应用框架,它被称为 “微框架”,因为它不强制使用特定的数据库、模板引擎或其他工具,开发者可以根据项目需求自由选择和集成外部库。Flask 框架基于 Werkzeug(WSGI 工具集)和 Jinja2(模板引擎),具有简洁灵活、易于扩展、上手快等特点,非常适合快速开发小型 Web 应用和 API,也常用于构建大型项目的原型。

二、安装 Flask

在使用 Flask 之前,需要先安装它。可以通过 Python 的包管理工具pip进行安装,在命令行中执行以下命令:

pip install flask

三、Flask 基础应用实例

创建一个最简单的 Flask 应用,在 Python 文件中输入以下代码:

from flask import Flask# 创建Flask应用实例
app = Flask(__name__)# 定义路由和视图函数
@app.route('/')
def hello_world():return 'Hello, World!'if __name__ == '__main__':# 运行应用,默认在本地5000端口app.run()

在上述代码中:

  1. 首先从flask模块导入Flask类,用于创建应用实例。

  2. 使用Flask(name)创建应用对象,__name__是 Python 的内置变量,它的值取决于模块的导入方式,这样 Flask 就能知道在哪里寻找模板、静态文件等。

  3. 使用@app.route(‘/’)装饰器定义路由,当用户访问网站根路径/时,就会执行hello_world函数,该函数返回的字符串会作为响应内容发送给客户端。

  4. if name == ‘main’:确保只有在直接运行该脚本时才启动 Flask 应用,在生产环境中,通常会使用更专业的 Web 服务器来运行应用。

运行该 Python 脚本后,在浏览器中访问http://127.0.0.1:5000/,就能看到Hello, World!的页面。

四、路由与 URL 变量

1. 基本路由

除了根路径路由,还可以定义其他路径的路由,示例如下:

from flask import Flaskapp = Flask(__name__)@app.route('/about')
def about_page():return 'This is the about page.'@app.route('/contact')
def contact_page():return 'This is the contact page.'if __name__ == '__main__':app.run()

此时访问http://127.0.0.1:5000/about会显示This is the about page.,访问http://127.0.0.1:5000/contact会显示This is the contact page.。

2. URL 变量

有时候需要在 URL 中传递参数,Flask 可以通过<变量名>的形式定义 URL 变量,示例如下:

from flask import Flaskapp = Flask(__name__)@app.route('/user/<username>')
def show_user_profile(username):return f'User {username}'@app.route('/post/<int:post_id>')
def show_post(post_id):return f'Post {post_id}'if __name__ == '__main__':app.run()

在上述代码中:

  • @app.route(‘/user/’)定义了一个接受字符串类型变量username的路由,访问http://127.0.0.1:5000/user/john,会显示User john。

  • @app.route(‘/post/int:post_id’)定义了一个接受整数类型变量post_id的路由,访问http://127.0.0.1:5000/post/123,会显示Post 123。

五、请求处理

Flask 可以处理不同类型的 HTTP 请求,如GET、POST等。下面是一个处理表单提交(POST请求)的实例:

from flask import Flask, requestapp = Flask(__name__)@app.route('/', methods=['GET', 'POST'])
def index():if request.method == 'POST':username = request.form.get('username')password = request.form.get('password')return f'You submitted username: {username} and password: {password}'return '''<form method="post"><input type="text" name="username" placeholder="Username"><input type="password" name="password" placeholder="Password"><input type="submit" value="Submit"></form>'''if __name__ == '__main__':app.run()

在这个例子中:

  • @app.route(‘/’, methods=[‘GET’, ‘POST’])指定该路由可以处理GET和POST请求。

  • 当接收到GET请求时,返回一个包含表单的 HTML 字符串。

  • 当接收到POST请求时,通过request.form.get(‘username’)和request.form.get(‘password’)获取表单中提交的数据,并返回相应的信息。

六、模板引擎(Jinja2)

Flask 默认使用 Jinja2 作为模板引擎,它可以将 Python 数据动态地渲染到 HTML 页面中。下面是一个简单的模板使用示例:

  1. 在项目根目录下创建一个名为templates的文件夹(Flask 会默认在这个文件夹中寻找模板文件)。

  2. 在templates文件夹中创建一个index.html文件,内容如下:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><title>Flask Template Example</title>
</head><body><h1>Hello, {{ name }}!</h1><ul>{% for item in items %}<li>{{ item }}</li>{% endfor %}</ul>
</body></html>
  1. 修改 Python 代码:
from flask import Flask, render_templateapp = Flask(__name__)@app.route('/')
def index():name = 'Flask User'items = ['Apple', 'Banana', 'Cherry']return render_template('index.html', name=name, items=items)if __name__ == '__main__':app.run()

在上述代码中:

  • render_template函数用于渲染模板文件,它会自动在templates文件夹中寻找指定的模板文件。

  • 可以将 Python 变量传递给模板,在模板中使用{{ 变量名 }}来显示变量的值,使用{% %}来编写控制语句,如for循环。

七、静态文件处理

在 Web 应用中,通常需要处理 CSS、JavaScript、图片等静态文件。Flask 默认会在项目根目录下的static文件夹中寻找静态文件。

  1. 在项目根目录下创建static文件夹。

  2. 在static文件夹中放入静态文件,例如styles.css。

  3. 修改模板文件(如templates/index.html)来引用静态文件:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><title>Flask Static Example</title><link rel="stylesheet" href="{{ url_for('static', filename='styles.css') }}">
</head><body><h1>Static File Example</h1>
</body></html>

在上述模板中,url_for(‘static’, filename=‘styles.css’)用于生成静态文件的 URL,static是 Flask 中静态文件的端点名称,filename指定具体的文件名。

八、Flask 扩展

Flask 有丰富的扩展,可以方便地集成各种功能,如数据库操作、用户认证、邮件发送等。例如,使用Flask-SQLAlchemy扩展进行数据库操作,使用Flask-Login进行用户认证等。安装和使用扩展的方式通常如下:

  1. 使用pip安装扩展,例如安装Flask-SQLAlchemy:
pip install flask-sqlalchemy
  1. 在 Flask 应用中初始化扩展,示例代码如下:
from flask import Flask
from flask_sqlalchemy import SQLAlchemyapp = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] ='sqlite:///example.db'
db = SQLAlchemy(app)class User(db.Model):id = db.Column(db.Integer, primary_key=True)username = db.Column(db.String(80), unique=True, nullable=False)email = db.Column(db.String(120), unique=True, nullable=False)def __repr__(self):return f'<User {self.username}>'if __name__ == '__main__':with app.app_context():db.create_all()app.run()

在上述代码中:

  • 首先导入Flask和SQLAlchemy类。

  • 通过app.config[‘SQLALCHEMY_DATABASE_URI’]配置数据库连接字符串,这里使用 SQLite 数据库。

  • 定义User模型类,继承自db.Model,用于表示数据库中的用户表结构。

  • with app.app_context():确保在创建数据库表时,应用上下文处于激活状态。


文章转载自:

http://Ah6WFy4N.pfkpy.cn
http://3VdvgiHW.pfkpy.cn
http://N8vBTDAH.pfkpy.cn
http://OnECHoYb.pfkpy.cn
http://HIbSKxo0.pfkpy.cn
http://ma0BnOoi.pfkpy.cn
http://GzNqXNYa.pfkpy.cn
http://D3UY9hY2.pfkpy.cn
http://DBt2j0aY.pfkpy.cn
http://l7qbr36j.pfkpy.cn
http://rYroy0DM.pfkpy.cn
http://9pOOPEkJ.pfkpy.cn
http://K9rILOOv.pfkpy.cn
http://9lf0T9yn.pfkpy.cn
http://D2afRNZv.pfkpy.cn
http://F8QCZCKK.pfkpy.cn
http://6bso5iKv.pfkpy.cn
http://5ziaifHA.pfkpy.cn
http://HQzpF8xg.pfkpy.cn
http://hTszB4fa.pfkpy.cn
http://mjsXO146.pfkpy.cn
http://tNpkCRyN.pfkpy.cn
http://mZCClJ2q.pfkpy.cn
http://Tg69RRYV.pfkpy.cn
http://swbPYVxk.pfkpy.cn
http://meDfLTiU.pfkpy.cn
http://12Se9hc7.pfkpy.cn
http://iSOAcYtY.pfkpy.cn
http://yTYmgbTE.pfkpy.cn
http://1VhOyJZc.pfkpy.cn
http://www.dtcms.com/wzjs/663177.html

相关文章:

  • 西安电商网站制作软文广告经典案例300大全
  • vs做网站需要的插件开源asp学校系统网站
  • 高端网站设计 上海网站运营目标
  • 局域网网站企业网页设计论文
  • 学生做的网站需要备案网络运营外包托管
  • 唐山网站建设推广快速搭建网站框架的工具
  • 做饲料推广哪个网站好建设网站网站设计
  • 有ip地址如何做网站城镇建设周刊网站
  • 12306网站如何做火车票候补盗用别人公司的产品图片做网站
  • 一般网站的费用深圳罗湖网站设计公司
  • 好的手表网站泰安网络公司电话
  • 做推广的网站有哪些网站怎么做悬浮图片放大
  • 赣州网站开发制作公司邮箱怎么弄
  • 集团网站建太原seo网站排名
  • 如何写网站优化目标安徽建设工程信息网查询平台公司
  • app开发公司怎么学东西关键词seo如何优化
  • 微网站开发合同娃哈哈网络推广方案
  • 大学生网站建设小结商务网站建设定义
  • 网站网格设计网站搭建修改收费依据
  • 最近热点新闻事件石家庄整站优化技术
  • 个人网站创建淘宝网电脑版登录入口
  • 盐城高端网站建设建设网站目标
  • 淘宝客建站工具建设肯德基网站的好处
  • 要怎么才能建设一个网站沧州高端网站制作
  • 诚讯通网站河南十大建筑公司排名
  • 公司怎么建立一个网站wordpress 发货
  • 怎么样做网站赚钱吗引擎搜索
  • 建设管理网站首页肇庆网站建设方案外包
  • 网站建设规划模板wordpress 仪表盘自定义
  • 小网站开发用哪些技术企查查天眼查免费